SQL循环插入记录
2008-12-02 09:00
218 查看
前言,面试的时候有人让我写一个向sql server数据库中循环插入1000条记录。因为我平时接触oracle比较多。就用oracle语句写了。结果面试官看了下说。oracle我也不懂。大体应该差不多。现在我把oracle和sql的循环插入语句都写出来。以免以后又忘记。
(1)sql下代码:
//声明变量;
DECLARE @i int
DECLARE @name varchar(10)
DECLARE @password varchar(10)
Set @i = 1000
//开始循环插入数据;
WHILE @i < 1000
BEGIN
Set @i =@i +1
SET @name = RIGHT('00000' + CAST(@i AS varchar(10)),5)
set @password = @name
insert into admin values(@name,@password)
END
(2)oracle下代码:
(1)先理论
declare
i number;
begin
i := 1;
while i<=100 loop
dbms_output.put_line(i);
i := i+1;
end loop;
end;
(2)实践
declare
year varchar2(4):='2008';
month number(2):=1;
schoolid number(10):=14640;
begin
loop
loop
insert into xx_jb1
(ID,
XXID,
GLBMJY,
XXXZGB,
XXLS,
HJXX,
HJXS,
LX_TZH_XX,
LX_TZH_XS,
BGNF,
BGYF,
STATE,
SSRQ,
TJRQ,
TBR)
values
(seq_xx_jb1.nextval,
schoolid,
1,
1,
2,
1,
248,
1,
248,
year,
month,
'已通过',
sysdate,
sysdate,
'管理员');
month := month+1;
exit when month>12;
end loop;
month := month-12;
schoolid := schoolid+1;
exit when schoolid>15040;
end loop;
end;
(1)sql下代码:
//声明变量;
DECLARE @i int
DECLARE @name varchar(10)
DECLARE @password varchar(10)
Set @i = 1000
//开始循环插入数据;
WHILE @i < 1000
BEGIN
Set @i =@i +1
SET @name = RIGHT('00000' + CAST(@i AS varchar(10)),5)
set @password = @name
insert into admin values(@name,@password)
END
(2)oracle下代码:
(1)先理论
declare
i number;
begin
i := 1;
while i<=100 loop
dbms_output.put_line(i);
i := i+1;
end loop;
end;
(2)实践
declare
year varchar2(4):='2008';
month number(2):=1;
schoolid number(10):=14640;
begin
loop
loop
insert into xx_jb1
(ID,
XXID,
GLBMJY,
XXXZGB,
XXLS,
HJXX,
HJXS,
LX_TZH_XX,
LX_TZH_XS,
BGNF,
BGYF,
STATE,
SSRQ,
TJRQ,
TBR)
values
(seq_xx_jb1.nextval,
schoolid,
1,
1,
2,
1,
248,
1,
248,
year,
month,
'已通过',
sysdate,
sysdate,
'管理员');
month := month+1;
exit when month>12;
end loop;
month := month-12;
schoolid := schoolid+1;
exit when schoolid>15040;
end loop;
end;
相关文章推荐
- sql向数据库中循环插入多条记录
- 使用游标 ----循环把SQL语句中的每条记录插入到另一个表中
- SQL循环插入记录
- SQL循环插入记录
- 一条sql语句循环插入N条不同记录
- SQL 循环插入记录
- sql 不够七位数 在左侧自动补零 ,并循环插入N条记录
- SQL使用触发器避免记录重复插入
- SQL使用触发器避免记录重复插入
- sql-插入一条记录到另一张表
- Mysql 插入记录时检查记录是否已经存在,存在则更新,不存在则插入记录SQL
- T-SQL 循环插入
- vb中的for 循环 和 数据库中插入多条记录
- SqlHelper.ExecuteScalar返回插入的记录的主键
- sql怎么把查询出的记录插入到另一张表中
- Mysql 插入记录时检查记录是否已经存在,存在则更新,不存在则插入记录SQL
- SQL 获取插入后的最新一条记录ID号
- MySql使用全记录6 -----MySQL批量SQL插入性能优化
- SQL获取表中最新插入的记录
- SQL插入一条记录,马上获得ID