SQLSERVER 插入数据问题 INSERT 多条重复数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLSERVER 插入数据问题 INSERT 多条重复数据相关的知识,希望对你有一定的参考价值。
有表A
字段多列:(F_ID INT ,F_NAME VARCHAR(20))
我要在表A里插入100行 这样的值 VALUES(1,'AAA')
200行 这样的值 VALUES(2,'BBB')
有啥简单的方法。
环境为SQLSERVER2000
INSERT INTO A(F_ID,F_NAME)
SELECT TOP 100 1,'AAA'
FROM master.dbo.syscolumns
INSERT INTO A(F_ID,F_NAME)
SELECT TOP 200 2,'BBB'
FROM master.dbo.syscolumns
能插入的最大行数取决于系统表syscolumns的记录数 参考技术A 首先连接数据库,并将页面填写的值通过insert 插入到你的用户表里去。
修改数据库表单列类型可用:
alter table tablename alter column userid int 在查询分析器下执行一下便可
补充问题:
怎么样让id不重复?添加的时候先别执行插入,先检索一下数据库中是否已经存在即将要插入的id,如果存在则提示该用户名已经被使用了。否则才执行插入;
语法:select count(*) from users where userid='"+userid+"'
然后判断返回来的行数是否大于0,如果大于0则证明该用户名存在,不允许再次插入,如果为0则执行插入 参考技术B 在查询分析器中输入下面内容,可以完成100行的那个,200行的同理。
=====================
declare @i int
set @i=0
while @i<100
begin
insert into test(id,tt) values (1,'AAA')
set @i=@i+1
end 参考技术C insert into A(f_id,f_name)values(1,'AAA')
go 100
insert into A(f_id,f_name)values(2,'BBB')
go 200
sqlserver 自增ID插入指定数据
set identity_insert 表名 ON --允许对自增列Id插入指定数据 insert into table_name(Id,Name) values(1,‘test‘) set identity_insert 表名 OFF --关闭对自增列Id插入指定数据
注意:
1.set identity_insert只对当前会话生效。
2.set identity_insert 表名 ON 设置后,必须显示指定Id,否则插入错误。如insert into table_name values(‘111‘)将报错。
向自增ID插入指定值。 报错:“当 IDENTITY_INSERT 设置为 OFF 时,不能为表 ‘ ‘ 中的标识列插入显式值”。
插入语句未显示指定ID。 报错:“仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表‘ ‘中的标识列指定显式值”。
以上是关于SQLSERVER 插入数据问题 INSERT 多条重复数据的主要内容,如果未能解决你的问题,请参考以下文章
简单的sqlserver批量插入数据easy batch insert data in sqlserver
SQLServer视图用insert into插入,报错!!
SQLServer之创建DML AFTER INSERT触发器