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

MySQL INSERT INTOステートメントで列の名前を指定せずに列に値を挿入するにはどうすればよいですか?


INSERT INTOステートメントで列の名前を指定せずに列に値を挿入するには、その列のデータ型にも注意しながら、テーブルの列の数と一致する値の数を指定する必要があります。

以下の例では、列の名前を指定せずに値を挿入しています。

mysql> Insert into student values(100,'Gaurav','Ph.D');
Query OK, 1 row affected (0.08 sec)

mysql> Select * from student;
+--------+--------+--------+
| RollNO | Name   | Class  |
+--------+--------+--------+
| 100    | Gaurav | Ph.D   |
+--------+--------+--------+

1 row in set (0.00 sec)

mysql> Insert into student values(200,'Rahul','Ph.D'),(300,'Aarav','B.tech');
Query OK, 2 rows affected (0.12 sec)
Records: 2 Duplicates: 0 Warnings: 0

mysql> Select * from student;

+--------+--------+--------+
| RollNO | Name   | Class  |
+--------+--------+--------+
| 100    | Gaurav | Ph.D   |
| 200    | Rahul  | Ph.D   |
| 300    | Aarav  | B.tech |
+--------+--------+--------+

3 rows in set (0.00 sec)

次のように列の総数とそのデータ型を考慮しない場合、MySQLはエラーをスローします-

mysql> Insert into student values(400,'Raman',M.Tech);
ERROR 1054 (42S22): Unknown column 'M.Tech' in 'field list'

mysql> Insert into student values(400,'Raman');
ERROR 1136 (21S01): Column count doesn't match value count at row 1

  1. MySQLテーブルの列の名前を取得するにはどうすればよいですか?

    これにはSHOWコマンドを使用できます。 以下は構文です- show columns from yourTableName; まずテーブルを作成しましょう- mysql> create table DemoTable (    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    StudentFirstName varchar(20),    StudentLastName varchar(20),    StudentAge int,  

  2. MySQLで列名を指定せずに値を挿入できますか?

    はい、次の構文を使用して、列名を指定せずに値を挿入できます- insert into yourTableName values(yourValue1,yourValue2,yourValue3,.....N); まず、テーブルを作成しましょう。ここでは、IdをNOTNULL-として設定しました。 mysql> create table DemoTable862(    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    FirstName varchar(100) ,    Age i