用SQL录入数据

   数据的录入采用【insert】语句。对应不同的录入方式,【insert】语句的语法会有所变化。
4.6.1 单行记录的录入
    1. 语法
    insert into 数据表(字段名1,字段名2,……) values(字段名1的值, 字段名2的值,……)。
    由于字段的类型不同,在书写字段值的时候要注意格式。
    数值型字段,可以直接写值。
    字符型字段,其值上要加上单引号。
    日期型字段,其值上要加上单引号,同时还要注意年、月、日的排列次序。
    在数据的插入语句中,插入列排序和插入值要一一对应。字符型和日期型字段要加上单引号,非空列必须有值。
    2. 实例
    在scott.emp数据表里共包含了3种类型的字段。
    empno,number(4),NOT NULL,数值型,长度为4,不能为空。
    ename,varchar2(10),字符型,长度为10。
    hiredate,date,日期型。
    我们以在这3个字段中插入记录为例进行说明。
    对于日期型的数据,读者往往会感觉为难,因为不知道年、月、日的排列顺序和格式,这里教给大家几个方法。首先查询范例数据表中的数据,然后“依葫芦画瓢”就可以了。
    (1)在【命令编辑区】输入“select empno, ename, hiredate from scott.emp;”,然后单击【执行】按钮,出现如图4.41所示的结果。因此,笔者的计算机系统默认的日期型数据格式应该为“日-月-年”。
    【参见光盘文件】:\第4章\4.6\461-1.sql。

    (2)在【命令编辑区】输入“insert into scott.emp(empno, ename, hiredate) values (7999, ’JONE’,’25-11月-2002’);”,然后单击【执行】按钮,出现如图4.42所示的结果。
    【参见光盘文件】:\第4章\4.6\461-2.sql。

    (3)在【命令编辑区】输入“select * from scott.emp where empno=7999;”,然后单击【执行】按钮,出现如图4.43所示的结果。
    【参见光盘文件】:\第4章\4.6\461-3.sql。

4.6.2 多行记录的录入
    在数据的录入中,经常需要将从数据表中查询到的数据稍做修改成批录入的情况,这就是多行数据的录入。
    1. 语法
    insert into 数据表(字段名1,字段名2,……)
    (select(字段名1或运算, 字段名2或运算,……) from 数据表 where 条件)
    实际上,首先利用子查询语句查询结果,然后再利用insert语句将结果插入数据表。子查询和insert中的数据表既可以相同,也可以不同,但要求查询结果的字段和insert插入的数据表中字段属性完全一致。
    2. 实例
    在【命令编辑区】执行以下语句。
    ―――――――――――――――――――――――――――――――――――――
    insert into scott.emp(empno,ename,hiredate) (select empno+100,ename,hiredate from scott.emp where empno>=6999 );
    ―――――――――――――――――――――――――――――――――――――
    【参见光盘文件】:\第4章\4.6\462.sql。
    单击【执行】按钮,出现如图4.44所示的结果。

4.6.3 表间数据复制
    可以从一个数据表中选择需要的数据插入到全新的数据表中。
    (1)在【命令编辑区】执行以下语句。
    ―――――――――――――――――――――――――――――――――――――
    create table scott.test
      as
       (
        select distinct empno,ename,hiredate
       from scott.emp
       where empno>=7000
       );
    ―――――――――――――――――――――――――――――――――――――
    【参见光盘文件】:\第4章\4.6\463.sql。

    然后单击【执行】按钮,出现如图4.45所示的结果。
    上述语句的功能是创建一个名为scott.test的数据表,表结构包含3个字段。并将scott.emp中具有不同的empno字段,且empno>=7000的数据复制到scott.test数据表中。
    (2)在【命令编辑区】输入“select * from scott.test;”语句,然后单击【执行】按钮,出现如图4.46所示的结果。

    这里的create table语句的功能是创建新的数据表,上述过程实际是分3步执行的。首先查询符合要求的数据,其次建立3个字段的名为test的数据空表,最后是将查询的数据插入到test数据表中。

时间: 2024-09-27 14:04:44

用SQL录入数据的相关文章

用SQL更新数据

    更新数据使用的是[update]命令.4.8.1 直接赋值更新    1. 语法    update 数据表    set 字段名1=新的赋值,字段名2=新的赋值,--    where 条件    2. 实例    在[命令编辑区]执行以下语句.    ―――――――――――――――――――――――――――――――――――――    update scott.emp     set empno=8888,ename='TOM',hiredate='03-9月 -2002 '     w

利用delphi录入数据时代码错误问题

问题描述 利用delphi录入数据时代码错误问题 procedure TFrm_stu_ins.Button1Click(Sender: TObject); begin //写入数据 if (Trim(edt_name.Text)<>'') and (Trim(edt_numb.Text)<>'' ) and (Trim(edt_id.Text)<>'') then begin dm.q_stu_ins_ins.close; dm.q_stu_ins_ins.SQL.C

mysql LOAD语句批量录入数据_Mysql

幸运的是,MySQL提供了一些方法用于批量录入数据,使得向表中添加数据变得容易了.本节以及下一节,将介绍这些方法.本节将介绍SQL语言级的解决方法. 1.基本语法 语法:LOAD DATA [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE] INTO TABLE tbl_name LOAD DATA INFILE语句从一个文本文件中以很高的速度读入一个表中.如果指定LOCAL关键词,从客户主机读文件.如果LOCAL没指定,文件必须位于服务器上.(L

mysql使用LOAD语句批量录入数据

本章的前面讨论如何使用SQL向一个表中插入数据.但是,如果你需要向一个表中添加许多条记录,使用SQL语句输入数据是很不方便的.幸运的是,MySQL提供了一些方法用于批量录入数据,使得向表中添加数据变得容易了.本节以及下一节,将介绍这些方法.本节将介绍SQL语言级的解决方法. 1.基本语法 语法:LOAD DATA [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE] INTO TABLE tbl_name LOAD DATA INFILE语句从一个文

ASP实现备份sql server数据

server|sql|备份|数据 建个bak文件夹啊,放数据! db.asp代码如下: <%dim conndim connstr'on error resume nextset conn=server.CreateObject("adodb.connection")connstr="Provider=SQLOLEDB;data source=192.168.2.1;UID=sa;Pwd=123;DataBase=test"conn.Open connstr

asp实现批量录入数据的实现

批量录入在数据库的应用中比较广泛的,关于批量录入的方法也有好多种.下面我就结合我实际中的应用,谈一下儿我是怎么实现的.主要用到的是form的集合的概念,通过循环取的所有的集合内数据.考虑到大家看着方便,我把它集成到了一个页面.下面是具体的代码: batchInput.asp<%'#####################################'File Function:批量录入数据'Author:Myhon'Date:2003-8-19'#######################

如何在VS.NET/C# Builder开发的网页中也能实现DOS下录入数据回车换行的功能

数据|网页 如何在VS.NET/C# Builder开发的网页中也能实现DOS下录入数据回车换行的功能北京煤炭科学研究总院经济与信息研究所 丁报圣 在DOS年代,录入数据时我们习惯了在录入完一行数据后敲一个回车转入下一行的数据录入.昔日DOS的辉煌已经成为过去,如今更加友好易用的GUI图形操作界面Windows已经进入了我们的日常生活. 1996年Windows95的出现是软件史上的一次伟大革命.Windows 是美国微软公司开发的一种图形方式的操作系统,它的出现克服了 DOS 中难记的一些命令

使用SQL Server数据服务开发功能强大且可扩展的应用程序

本文使用了以下技术: SQL Server 本文将介绍以下内容: SSDS 数据模型 管理实体.容器和颁发机构 创建示例 Web 应用程序 类序列化和反序列化 本专栏基于 SQL Server 数据服务的预发布版本撰写而成.文中包含的所有信息均有可能发生变更. 目录 SSDS 数据模型 构建分类广告系统 添加城市 添加类别 更新和删除实体 添加和删除列表架构 分类 Web 应用程序 类反序列化 使用自定义列表架构

LINQ to SQL实现数据访问通用基类

LINQ to SQL让人着迷,在.Net应用程序当中,.它提供了一种安全,强大和非常灵活的方式执行数据 访问,在当前微软传道者介绍上看,很容易上手. 不幸的是,当你对LINQ进行仔细研究后,我发现在多层架构中使用LINQ的并不是十分容易. 本文介绍用LINQ to SQL实现数据层的典型的问题点 ,并提供了一个简单,方便和灵活的方式来克服 它们. 本文附带的LING to SQL 实现数据访问通用类有以下的特点: 实现了存储库模式,你可以用不到10行代码执行LINQ实体类型的CRUD (Cre