zoukankan      html  css  js  c++  java
  • mysql 插入 详解

    表创建好后,就可以往里插入记录了,插入记录的基本语法如下:

    INSERT INTO tablename (field1,field2,……fieldn) VALUES(value1,value2,……valuesn);

    例如,向表emp 中插入以下记录:ename 为zzx1,hiredate 为2000-01-01,sal 为2000,deptno为1,命令执行如下:

    mysql> insert into emp (ename,hiredate,sal,deptno) values('zzx1','2000-01-01','2000',1);
    Query OK, 1 row affected (0.00 sec)

    也可以不用指定字段名称,但是values 后面的顺序应该和字段的排列顺序一致:

    mysql> insert into emp values('lisa','2003-02-01','3000',2);
    Query OK, 1 row affected (0.00 sec)
    对于含可空字段、非空但是含有默认值的字段、自增字段,可以不用在insert 后的字段列表里面出现,values 后面只写对应字段名称的value,这些没写的字段可以自动设置为NULL、
    默认值、自增的下一个数字,这样在某些情况下可以大大缩短SQL 语句的复杂性。例如,只对表中的ename 和sal 字段显式插入值:
      mysql> insert into emp (ename,sal) values('dony',1000);
      Query OK, 1 row affected (0.00 sec)

    来查看一下实际插入值:

      mysql> select * from emp;
      +--------+------------+---------+--------+
      | ename | hiredate | sal | deptno |
      +--------+------------+---------+--------+
      | zzx | 2000-01-01 | 100.00 | 1 |
      | lisa | 2003-02-01 | 400.00 | 2 |
      | bjguan | 2004-04-02 | 100.00 | 1 |
      | dony | NULL | 1000.00 | NULL |
      +--------+------------+---------+--------+

    果然,设置为可空的两个字段都显示为NULL。
    在MySQL 中,insert 语句还有一个很好的特性,可以一次性插入多条记录,语法如下:

    INSERT INTO tablename (field1, field2,……fieldn)
    VALUES
    (record1_value1, record1_value2,……record1_valuesn),
    (record2_value1, record2_value2,……record2_valuesn),
    ……
    (recordn_value1, recordn_value2,……recordn_valuesn)
    ;

    可以看出,每条记录之间都用逗号进行了分隔。
    下面的例子中,对表dept 一次插入两条记录:

    mysql> insert into dept values(5,'dept5'),(6,'dept6');
    Query OK, 2 rows affected (0.04 sec)
    Records: 2 Duplicates: 0 Warnings: 0
    mysql> select * from dept;
    +--------+----------+
    | deptno | deptname |
    +--------+----------+
    | 1 | tech |
    | 2 | sale |
    | 5 | fin |
    | 5 | dept5 |
    | 6 | dept6 |
    +--------+----------+
    5 rows in set (0.00 sec)

     这个特性可以使得MySQL 在插入大量记录时,节省很多的网络开销,大大提高插入效率。

  • 相关阅读:
    电源跳闸或突然断电后Kafka启动失败问题
    Failure to find org.glassfish:javax.el:pom:3.0.1b06SNAPSHOT
    Idea中的maven工程运行Scala报Command execution failed
    Scala(一)入门
    HBase2.0.5
    GridView之CommandField的妙用——点击提示删除
    SharePoint 2010在新窗口打开文档库中的文件
    SharePoint 2010 使用后台代码向SP.UI.ModalDialog.showModalDialog传值
    SharePoint 2010 使用代码创建视图查询条件
    Sharepoint 2010 禁止用户在文档库的第一级(根)目录上传文件
  • 原文地址:https://www.cnblogs.com/xuchunlin/p/6197445.html
Copyright © 2011-2022 走看看