MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

このクエリのMySQL構文エラーは何ですか–予約済みキーワードを使用してテーブルを作成しますか?


MySQLで予約されたキーワードである「groups」という名前のテーブルを作成しようとしたとします。groupsはMySQLで予約されたキーワードであるため、「groups」は使用できません。

「groups」という名前のテーブルの作成中に次のエラーが発生しました-

mysql> create table groups
−> (
−> id int,
−> name varchar(40)
−> );
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'groups
(
id int,
name varchar(40)
)' at line 1

reservedキーワードを使用してテーブルを作成するには、backticks( ``)。

の概念を使用する必要があります。

テーブルを作成しましょう-

mysql> create table `groups`
-> (
−> id int,
−> name varchar(40)
−> )
−> ;
Query OK, 0 rows affected (3.08 sec)

挿入コマンド-

を使用して、いくつかのレコードをテーブルに挿入します。
mysql> insert into `groups` values(10,'John');
Query OK, 1 row affected (0.30 sec)

mysql> insert into `groups` values(11,'Bob');
Query OK, 1 row affected (0.32 sec)

mysql> insert into `groups` values(12,'Mike');
Query OK, 1 row affected (0.40 sec)

selectステートメントを使用してテーブルのレコードを表示する

mysql> select *from `groups`;

これにより、次の出力が生成されます-

+------+------+
| id   | name |
+------+------+
|   10 | John |
|   11 | Bob  |
|   12 | Mike |
+------+------+
3 rows in set (0.04 sec)

  1. テーブル名として「group」を使用しているときのMySQL構文エラー(SELECTクエリ内)

    グループは予約済みのキーワードであるため、テーブル名として使用することはできません。したがって、テーブル名として使用するとエラーが発生します。このようなエラーを回避するには、テーブル名「group」の前後に囲まれたバッククォート記号を使用する必要があります。 例を見て、テーブルを作成しましょう- mysql> create table `group`    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> Name varchar(20)

  2. MySQLでテーブルを作成する-Hibernate

    テーブルを作成するには、以下の行をapplication.propertiesに挿入する必要があります- spring.jpa.hibernate.ddl-auto=update ここで、Hibernateはテーブルdemo88を自動的に作成します。 application.propertiesコードは次のとおりです- spring.datasource.platform=mysql spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect spring.jpa.hibernate.ddl-auto=upda