MySQLで名前にスペースを含むテーブルを作成できますか?
MySQLでテーブル名にスペースを含むテーブルを作成するには、バッククォートを使用する必要があります。そうしないと、エラーが発生します。
最初に、名前にスペースを含むテーブルを作成して、どのようなエラーが発生するかを見てみましょう。つまり、以下の「デモテーブル」テーブル名です。
mysql> create table Demo Table ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, EmployeeFirstName varchar(20), EmployeeLastName varchar(20), EmployeeAge int, EmployeeSalary int, EmployeeAddress varchar(200) ); ERROR 1064 (42000): You have an error in your syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Table37 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, EmployeeFirstName varchar(' at line 1 )の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。
テーブル名のバッククォートの概念を使用して、エラーを削除しましょう。 MySQLでスペースを含むテーブルを作成するためのクエリは次のとおりです。
mysql> create table `Demo Table37` ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, EmployeeFirstName varchar(20), EmployeeLastName varchar(20), EmployeeAge int, EmployeeSalary int, EmployeeAddress varchar(200) ); Query OK, 0 rows affected (0.66 sec)
上記では、バックティック記号で囲まれたスペースでテーブル名を設定したため、エラーは発生しません:
`Demo Table37`
-
MySQLで数値名のデータベースを作成できますか?
以下に示すような数値名でデータベースを作成することはできません- mysql> create database 1233; これにより、次の出力が生成されます- 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 '1233' at line 1 数値名でデータベースを作成するには、データベース名の前後にバッククォ
-
インデックスを使用してMySQLテーブルを作成するにはどうすればよいですか?
インデックスを使用してMySQLテーブルを作成するための構文は、次のとおりです- create table yourTableName ( yourColumnName1 dataType, yourColumnName2 dataType . . . N ); create index yourIndexName1 on(yourColumnName1 ); create index yourIndexName2 on(yourColumnName2 ); まずテーブルを作成しましょう- mysql> create table DemoTable ->