• oracle中的insert语句(转)


    来源网址:http://www.cnblogs.com/shengel/archive/2007/06/06/773559.html

    转贴原因:挺有意思的,与SQL有很多的不同,没有具体去测试.

    在oracle中使用DML语言的insert语句来向表格中插入数据,先介绍每次只能插入一条数据的语法
    INSERT  INTO   表名(列名列表)   VALUES(值列表);
    注意:
    当对表中所有的列进行赋值,那么列名列表可以省略,小括号也随之省略
    必须对表中的非空字段进行赋值
    具有默认值的字段可以不提供值,此时列名列表中的相应的列名也要省略
    举例:有如下表格定义 
    create table book(bookid 
    char(10) not null , name varchar2(60),price number(5,3))
    使用下面的语句来插入数据
    INSERT INTO BOOK(bookid,name,price)   VALUES(
    '100123','oracle sql',54.70);
    INSERT INTO BOOK                         VALUES(
    '100123','oracle sql',54.70);
    INSERT INTO BOOK(bookid)           VALUES(
    '100123');
    由于bookid是非空,所以,对于book来说,至少要对bookid进行赋值,虽然这样的数据不完整
    如果想往一个表格中插入多条数据,那么带有values子句的insert就不行了,这时候必须使用insert语句和select语句进行配合来实现同时插入多条数据:
    例如:现在有一个空表a和一个有数据的表格b,他们的结构是一样, 把b表中的所有数据插入到a表中的语句是:
    INSERT INTO A (列1,列2,列3)  
                SELECT 列1,列2,列3
                FROM B ; 
    --查询语句中可以使用任意复杂的条件或者子查询
    如果数据的来源不是现存表的数据,也想多条插入那么使用如下的方法:
    INSERT INTO  tablename(列1,列2,列3,)
    SELECT  值1,值2,值3   FROM  DUAL
    UNION
    SELECT  值1,值2,值3   FROM  DUAL
    UNION
    SELECT  值1,值2,值3   FROM  DUAL
      

    如果上面的值有字符和日期型数据,那么使用单引号即可,每一个select语句得到一条数据,然后使用集合操作符union把多条数据合并到一个结果集中,来实现一次插入多条数据的功能

  • 相关阅读:
    关于JQuery的autocomplete1.11.4版本插件的使用心得
    BUG:ie678 使用jQuery设置页面标题
    BUG:ie8不支持indexOf()
    【转】使用@import和link导入样式
    【转】css3 media媒体查询器用法总结
    【转】css hack
    【转】移动平台WEB前端开发技巧汇总
    json格式与javascript对象字面量和数组对象的区别
    窗口和元素的大小:offset client scroll
    sharepoint2013 新建母板页 新建页面布局 关联母板页和页面布局
  • 原文地址:https://www.cnblogs.com/xqf222/p/3306804.html
Copyright © 2020-2023  润新知