• MySQL为数据表的指定字段插入数据


    username not null 没有默认值/有默认值   insert不插入username字段 均不报错  


    2014年07月23日21:05    百科369


    MySQL为数据表的指定字段插入数据

    为数据表的指定字段插入数据,就是在INSERT语句中只向部分字段中插入值,而其它字段的值为数据表定义时的默认值。

    基本的语法格式如下:

    INSERT INTO 表名(字段1,字段2,...,字段m) VALUES(值1,值2,...,值m);
    • 字段1,字段2,...,字段m:表示数据表中的字段名称,此处指定数据表的部分字段的名称。
    • 值1,值2,...,值m:表示指定字段的值,每个值与相应的字段对应。

    实例1

    1. 向student表的xuesheng字段和yuwen字段插入数据。INSERT语句的代码如下:

    mysql>INSERT INTO student(xuesheng,yuwen) VALUES('王媛媛',88);

    插入数据的操作效果如下图所示:

    向student表的部分指定字段插入数据的操作效果

    上图中代码执行的结果显示,记录插入成功。

    2. 执行SELECT语句查询student表。如下图所示:

    执行SELECT语句查询student表的操作效果

    3. 上图中代码执行的结果显示,记录已经插入成功。但是,shuxue字段和yungyu字段都为空值(NULL)。执行SHOW CREATE TABLE语句查看student表的详细结构。如下图所示:

    使用SHOW CREATE TABLE语句查看student表的详细结构

    从上图中代码执行的查询结果可以看出,shuxue字段和yingyu字段的默认值为空值(NULL),因为这两个字段没有插入值,数据库系统自动 为其插入了该字段定义时的默认值,所以这两个字段的值才为空值。如果默认值设置为了某一个具体的值,那么这两个字段的值就会显示为那一个具体的值。

    另外,我们虽然没有插入id字段的值,但是该字段自动添加了一个整数值6。这是因为id字段设置为了表的主键,虽然不能为空,但是数据库系统会自动为该字段插入一个自增的序列值。

    提示

    没有赋值的字段,数据库系统会为其插入一个默认值。这个默认值是在创建数据表的时候定义的。如上面的shuxue字段和yingyu字段的默认值为NULL。如果某个字段没有设置默认值,而且是非空,那就必须为其赋值。不然,数据库系统会提示一条警告信息。


    实例2

    这种方式同样可以随意设置字段的顺序,而不需要按照数据表定义时的顺序进行插入数据。

    1. 向student表中的id、xuesheng和yingyu字段插入数据。INSERT语句中,这3个字段的顺序可以任意排列,代码如下:

    mysql>INSERT INTO student(yingyu,id,xuesheng) VALUES(99,4,'杨萍');

    操作效果如下图所示:

    向student表中插入任意排列的部分字段的操作效果

    上图中代码执行的结果显示,记录插入成功。

    2. 执行SELECT语句查询student表。如下图所示:

    执行SELECT语句查询student表的操作效果

    上图中代码执行的结果显示,记录已经成功插入。

  • 相关阅读:
    pat1041. Be Unique (20)
    Linux基础命令---service
    Linux基础命令---last
    Linux基础命令---date
    Linux基础命令---ckconfig
    Linux基础命令---cal
    Linux基础命令---bc
    linux基础命令---df
    linux基础命令---du
    Linux基础命令---hwclock
  • 原文地址:https://www.cnblogs.com/afei-happy/p/4252233.html
Copyright © 2020-2023  润新知