|
|
1
134
如果你有一个列是一个身份,就这样做
如果你没有身份,那你能设定吗?这是最好的方法。。使用上面的SQL。 如果不是,则需要插入新行
|
|
|
2
1
您需要将IDENTITY_INSERT添加到select语句中:
完成后,一定要记得
http://msdn.microsoft.com/en-us/library/aa259221(SQL.80).aspx |
|
|
3
0
@菲尔:你不是说你的表有两(2)列,自动递增的PK列和AdminName列吗?如果AdminName只有一列,那么AdminName就是PK,当然不能自动增加字符串。业务规则是否希望将完全限定的Windows用户名作为主键?这将是可行的,而且是有意义的,因为这样您就不需要在AdminName列上使用备用的唯一索引。 但如果您的表有两列,而不是一列: 标识列,指定增量,通常为1,但可以是2、5或10或其他值。若要插入行,只需插入其他列的值,而不对PK列执行任何操作:
执行插入的存储过程可以使作用域标识成为返回值,或者作用域标识可以作为OUT参数传递回客户端。
编辑: 可能,Administrators表包含一组管理员。但是,如果它除了整型主键列之外没有任何列,那么就无法识别管理员;唯一能做的就是将他们彼此区分开来。这一点也不让你走远。但是,如果您的Administrator表具有以下结构之一:
您可以从其他表中引用管理员表,外键将是有意义的。这正是由一个整数列组成的表所缺少的——含义。 如果有两列,则可以让存储过程执行以下操作:
P、 你提到如果你“没有任何东西要插入”,你就不知道如何“插入一个值”。这里有矛盾。如果没有要插入的内容,为什么要插入?如果你对客户一无所知,为什么还要创建一个新的客户记录呢?不是他们的名字,他们的城市,他们的电话号码,什么都没有? |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
Marc Guillot · 记录值时忽略冲突 1 年前 |
|
|
Fachry Dzaky · 正确使用ROW_NUMBER 1 年前 |
|
|
TriumphTruth · 从满足特定条件的数据集中选择1行 1 年前 |