怎样在sql中用insert语句往表中插入多行

我想往我的销售表中插入0001电视50010000002电脑40002000等多行数据!请各位高手用insert给我指点一哈... 我想往我的销售表中插入
0001 电视 500 1000
0002 电脑 4000 2000等多行数据!请各位高手用insert给我指点一哈
展开
 我来答
43662085
推荐于2017-09-08 · TA获得超过730个赞
知道小有建树答主
回答量:468
采纳率:0%
帮助的人:321万
展开全部
如果数据很多的话 建议可以用别的方法 特别是数据量比较多的时候
ORACLE 有一个SQLLODER 功能

1.生成百万级的sql,保存SQL文件为getobject.sql
select a.owner||',"'||a.object_name||'",'||a.object_id||','||to_char(a.created ,'yyyy-mm-dd hh24:mi:ss')||','||a.status
from dba_objects a,(select rownum from dual connect by rownum <= 20);

2.sql数据转换成数据文件,保存脚本为call.sql

set echo off
set term off
set trimout on
set trimspool on
set pagesize 0
set feedback off
set heading off
spool c:\getobject.csv
@c:\getobject.sql
set spool off
set heading on
set feedback on
set trimspool off
set trimout off
set term on
set echo on

注释:
set colsep' '; //-域输出分隔符
set echo off; //显示start启动的脚本中的每个sql命令,缺省为on
set echo on //设置运行命令是是否显示语句
set feedback on; //设置显示“已选择XX行”
set feedback off; //回显本次sql命令处理的记录条数,缺省为on
set heading off; //输出域标题,缺省为on
set pagesize 0; //输出每页行数,缺省为24,为了避免分页,可设定为0。
set linesize 80; //输出一行字符个数,缺省为80
set numwidth 12; //输出number类型域长度,缺省为10
set termout off; //显示脚本中的命令的执行结果,缺省为on
set trimout on; //去除标准输出每行的拖尾空格,缺省为off
set trimspool on; //去除重定向(spool)输出每行的拖尾空格,缺省为off
set serveroutput on; //设置允许显示输出类似dbms_output
set timing on; //设置显示“已用时间:XXXX”
set autotrace on-; //设置允许对执行的sql进行分析
set verify off //可以关闭和打开提示确认信息old 1和new 1的显示.

3.运行call.sql 生成数据文件

sqlplus hxadmin/secret as sysdba;
@c:\call.sql

4.初始化环境,创建导入表OBjects

create table OBJECTS
(
OWNER VARCHAR2(50),
OBJECT_NAME VARCHAR2(50),
OBJECT_ID NUMBER,
STATUS VARCHAR2(10),
CREATED DATE
)

5.生成导入控制文件,保存控制文件为ldr_object.ctl

LOAD DATA
INFILE getobject.csv
TRUNCATE INTO TABLE OBJECTS
FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS
(OWNER,
OBJECT_NAME,
OBJECT_ID,
CREATED date 'yyyy-mm-dd hh24:mi:ss',
STATUS)

6.执行sqlldr命令

C:> sqlldr hxadmin/secret control= ldr_object.ctl direct = true

7.查看ldr_object.log日志文件

这个例子 是我自己做的 一个100W 行的数据插入也只要10几秒。希望你能用到。
charlie_qi
2010-04-10 · TA获得超过146个赞
知道小有建树答主
回答量:101
采纳率:100%
帮助的人:0
展开全部
insert into 销售表(字段1,字段2,字段3,字段4) values ('0001','电视','500','1000')
insert into 销售表(字段1,字段2,字段3,字段4) values ('0002','电脑','4000','2000')

依次类推,是这意思么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
法ke优切克闹
2015-10-23 · 超过28用户采纳过TA的回答
知道答主
回答量:57
采纳率:100%
帮助的人:32.5万
展开全部
insert 表名 (列名,列名)

select 值1,值2 union
select 值1,值2 union
select 值1,值2
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我要注册和登录
2010-04-10 · TA获得超过451个赞
知道小有建树答主
回答量:301
采纳率:100%
帮助的人:416万
展开全部
insert into tb
select '0001', '电视', 500, 1000
union all
select '0002', '电脑', 4000, 2000
union all
select ..............
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友37484cf
推荐于2017-10-13 · 超过13用户采纳过TA的回答
知道答主
回答量:93
采纳率:0%
帮助的人:38.7万
展开全部
INSERT INTO student VALUES(name, age, sex),
('哈哈', 21, '男'),
('呵呵', 22, '女');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式