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

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`

  1. 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 数値名でデータベースを作成するには、データベース名の前後にバッククォ

  2. インデックスを使用してMySQLテーブルを作成するにはどうすればよいですか?

    インデックスを使用してMySQLテーブルを作成するための構文は、次のとおりです- create table yourTableName ( yourColumnName1 dataType, yourColumnName2 dataType . . . N ); create index yourIndexName1 on(yourColumnName1 ); create index yourIndexName2 on(yourColumnName2 ); まずテーブルを作成しましょう- mysql> create table DemoTable    ->