sQL数据库表的主键列设为标识,增量为1,下次插入数据时能不插入主键列吗
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sQL数据库表的主键列设为标识,增量为1,下次插入数据时能不插入主键列吗相关的知识,希望对你有一定的参考价值。
这种情况使用xml来进行批量插入.1.asp.net页面上抓取数据,转换成xml字符串
2.将这个字符串作为参数传给存储过程
3.存储过程里,将这个xml读取成临时表
4.整个临时表插入到目标数据表中,这个过程可以使用sql
server的事务;其实在这里用不用事务问题都不大了,因为存储过程出错,数据插不进去的,还会抛出异常到asp.net后台,让后台进行处理异常.
您用游标或asp.net代码来循环,速度会比较慢的. 参考技术A 不知道你是什么数据库,
如果是
SQL
Server
的话
INSERT
INTO
表
VALUES
(
'test',
'test'
);
会自动忽略掉
自增的那一列
userid
也可以手动
INSERT
INTO
表(
username,
userPwd
)
VALUES
(
'test',
'test'
);
例如:
1>
CREATE
TABLE
test_create_tab2
(
2>
id
INT
IDENTITY(1,
1)
PRIMARY
KEY,
3>
val
VARCHAR(10)
4>
);
5>
go
1>
INSERT
INTO
test_create_tab2(val)
VALUES
('NO
id');
2>
go
请注意:
下面的插入处理,
A
与
B
是
指定列名的。
C
与
D
是
数据库自动判断的。
1>
INSERT
INTO
test_create_tab2(val)
VALUES
('A');
2>
INSERT
INTO
test_create_tab2(val)
VALUES
('B');
3>
INSERT
INTO
test_create_tab2
VALUES
('C');
4>
INSERT
INTO
test_create_tab2
VALUES
('D');
5>
go
1>
SELECT
*
FROM
test_create_tab2;
2>
go
id
val
-----------
----------
1
NO
id
2
A
3
B
4
C
5
D
(5
行受影响)
如果是
mysql
,
由于数据库不会自动忽略掉
自增的那一列
userid,
那么需要手动
INSERT
INTO
表(
username,
userPwd
)
VALUES
(
'test',
'test'
);
SQL Server 主表主键自增量,如何获取主键呢?
开发过程中经常存在主表的主键是自增量的情况,需要获取增量值才能插入字表数据,获取方法如下三种:
- IDENT_CURRENT 返回为某个会话和用域中的指定表生成的最新标识值。
- @@IDENTITY 返回为跨所有作用域的当前会话中的某个表生成的最新标识值。
- SCOPE_IDENTITY() 返回为当前会话和当前作用域中的某个表生成的最新标识值。
推荐使用IDENT_CURRENT ,不容易因为域和表产生错误值。
参考资料:
以上是关于sQL数据库表的主键列设为标识,增量为1,下次插入数据时能不插入主键列吗的主要内容,如果未能解决你的问题,请参考以下文章