數(shù)據(jù)庫中增加一條新數(shù)據(jù)使用的命令是“insert”。INSERT命令可以向數(shù)據(jù)庫已有的表中插入一行或者多行元組數(shù)據(jù),有兩種語法形式:1、配合VALUES關鍵字,語法為“INSERT INTO 表名 (列名1,…列名n) VALUES(值1…,值n);”;2、配合SET關鍵字,語法為“INSERT INTO 表名 SET 列名1= 值1,列名2=值2,…;”。
本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。
數(shù)據(jù)庫中增加一條新數(shù)據(jù)使用的命令是insert
。
insert命令插入數(shù)據(jù)
數(shù)據(jù)庫與表創(chuàng)建成功以后,需要向數(shù)據(jù)庫的表中插入數(shù)據(jù)。可以使用INSERT 語句向數(shù)據(jù)庫已有的表中插入一行或者多行元組數(shù)據(jù)。
INSERT 語句有兩種語法形式,分別是 INSERT…VALUES 語句和 INSERT…SET 語句。
1、INSERT…VALUES語句
語法格式為:
INSERT INTO 表名 (列名1,…列名n) VALUES(值1…,值n);
-
首先,在INSERT INTO子句之后,在括號內(nèi)指定表名和逗號分隔列的列表。
-
然后,將括號內(nèi)的相應列的逗號分隔值放在VALUES關鍵字之后。
在執(zhí)行插入語句前,需要具有執(zhí)行INSERT語句的INSERT權限。
2、INSERT…SET語句
語法格式為:
INSERT INTO 表名 SET 列名1= 值1,列名2=值2,…;
此語句用于直接給表中的某些列指定對應的列值,即要插入的數(shù)據(jù)的列名在 SET 子句中指定,col_name 為指定的列名,等號后面為指定的數(shù)據(jù),而對于未指定的列,列值會指定為該列的默認值。
由 INSERT 語句的兩種形式可以看出:
-
使用 INSERT…VALUES 語句可以向表中插入一行數(shù)據(jù),也可以插入多行數(shù)據(jù);
-
使用 INSERT…SET 語句可以指定插入行中每列的值,也可以指定部分列的值;
-
INSERT…SELECT 語句向表中插入其他表的數(shù)據(jù)。
-
采用 INSERT…SET 語句可以向表中插入部分列的值,這種方式更為靈活;
-
INSERT…VALUES 語句可以一次插入多條數(shù)據(jù)。
insert命令的使用示例:
1、向表中的全部字段添加值
在 test_db 數(shù)據(jù)庫中創(chuàng)建一個課程信息表 tb_courses,包含課程編號 course_id、課程名稱 course_name、課程學分 course_grade 和課程備注 course_info
CREATE TABLE tb_courses( course_id INT NOT NULL AUTO_INCREMENT, course_name CHAR(40) NOT NULL, course_grade FLOAT NOT NULL, course_info CHAR(100) NULL, PRIMARY KEY(course_id) );
向表中所有字段插入值的方法有兩種:一種是指定所有字段名;另一種是完全不指定字段名。
【實例 1】在 tb_courses 表中插入一條新記錄,course_id 值為 1,course_name 值為“Network”,course_grade 值為 3,info 值為“Computer Network”。
首先查看 tb_courses 表
查詢結果顯示當前表內(nèi)容為空,沒有數(shù)據(jù),接下來執(zhí)行插入數(shù)據(jù)的操作
INSERT INTO tb_courses(course_id,course_name,course_grade,course_info) VALUES(1,'Network',3,'Computer Network');
可以看到插入記錄成功。在插入數(shù)據(jù)時,指定了 tb_courses 表的所有字段,因此將為每一個字段插入新的值。
INSERT 語句后面的列名稱順序可以不是 tb_courses 表定義時的順序,即插入數(shù)據(jù)時,不需要按照表定義的順序插入,只要保證值的順序與列字段的順序相同就可以。
2、向表中指定字段添加值
為表的指定字段插入數(shù)據(jù),是在 INSERT 語句中只向部分字段中插入值,而其他字段的值為表定義時的默認值。
【實例 2】在 tb_courses 表中插入一條新記錄,course_name 值為“System”,course_grade 值為 4,course_info 值為“Operating System”
INSERT INTO tb_courses SET course_name = 'System', course_grade = 4, course_info = 'Operation System';
【