将数据逐个插入数据库,但具有相同的唯一ID

时间:2017-01-26 07:45:21

标签: sql sql-server

我想问一下。是否有可能我将数据逐个插入我的数据库,但具有相同的唯一ID,以显示我插入的所有数据都是一个数据。像

id_primary   |   name   |   unique_id
     1       |   test1  |      001
     2       |   test2  |      001
     3       |   test3  |      001
     4       |   test4  |      001
     5       |   bobo   |      002
     6       |   bebe   |      002

也许有人可以给我一些建议..谢谢你,祝你有愉快的一天。 Cheerss !!

2 个答案:

答案 0 :(得分:0)

我将创建过程来获取最大的现有unique_id,然后递增它并使用insert中的值。

declare @uniqueIdVal int
declare @uniqueId varchar(3)

select @uniqueIdVal = isnull(max(convert(int, unique_id)), 0) + 1 
from datatable

set @uniqueId = right('000' + convert(varchar(3), @uniqueIdVal), 3)

insert into datatable (name, unique_id)
values ('name1', @uniqueId),
       ('name2', @uniqueId),
       ...
       ('nameN', @uniqueId)

但我不太确定这是否是问题

答案 1 :(得分:0)

你可以在MS sql server中尝试这个,字段unique_id应该设置为Integer。

DECLARE @maxUniqueId int

SELECT @maxUniqueId = NVL(MAX(unique_id), 0) FROM table_name;

set @maxUniqueId = maxUniqueId + 1;

insert into table (name, unique_id) values ('xxx', maxUniqueId);
insert into table (name, unique_id) values ('xxx', maxUniqueId);
insert into table (name, unique_id) values ('xxx', maxUniqueId);