MySQL基础学习_第012章节_向表中插入数据

MySQL向表中插入数据

1. 向数据表中插入单条数据

语法格式:

INSERT INTO 
    表名(字段名1,字段名2,字段名3,...) 
VALUES
    (值1,值2,值3,...);

要求:字段的数量和值的数量相同,并且数据类型也要对应相同

例:向往第011节课创建的t_testtable数据表插入数据

第011节课详见:

方式一:

INSERT INTO
    t_testtable(no,name,sex,classno,birth)
VALUES
    (1,zhangsan,1,class001, 1990-06-11);

方式二:

将字段位置调换一下,但需要注意的是values的值要和对应的字段一致

INSERT INTO 
    t_testtable(name,sex,classno,birth,no) 
VALUES
    (lisi,2,class002, 1998-04-15,2);

方式三:

只插入一个字段及对应的字段值,这样的结果是其它没有values的,若没有做NOT NULL限制的情况下,统一展示为NULL

INSERT INTO
    t_testtable(name)
VALUES
    (wanglaoliu);

我们可以通过执行如下命令查看t_testtable的表结构,此时我们可以看到Default展示的为NULL,也就是当我们没有给其它字段赋值values时,默认展示为NULL

DESC t_testtable;

注意:如果将t_testtable数据表中的sex字段的Default默认设置为1时,再次只插入一个字段及对应的字段值时,sex字段默认展示为1,不再是NULL

我们可以先执行如下命令删除之前创建的t_testtable数据表,然后重新创建新的表,起名还叫t_testtable

DROP TABLES t_testtable;
CREATE TABLE t_testtable(
    no bigint,
    name VARCHAR(255) ,
    sex char(1) default 1,
    classno VARCHAR(255),
    birth CHAR(10)
);
INSERT INTO
    t_testtable(name)
VALUES
    (wanglaoliu);

方式四:

省略字段名,但是列的数量以及列的顺序都不能错乱

INSERT INTO
    t_testtable
VALUES
    (2,zhuzhiqiang,1,class002, 1968-08-12);

2. 向数据表中插入多条数据

一次性向数据表中插入多条语句时,values的值与值之间用英文的逗号隔开

INSERT INTO
    t_testtable(no,name,sex,classno,birth)
VALUES
    (1, 张三, 1, class001, 1991-01-11),
    (2, 李四, 1, class002, 1992-02-12),
    (3, 王五, 0, class003, 1993-03-13),
    (4, 赵六, 1, class004, 1994-04-14),
    (5, 田七, 0, class005, 1995-05-15);
经验分享 程序员 微信小程序 职场和发展