Mr *_*ket 88 sql sql-server stored-procedures
我目前有一个存储过程,我想在其中插入新行.
insert into cars
(id, Make, Model)
values('A new Guid', "Ford", "Mustang")
Run Code Online (Sandbox Code Playgroud)
所以主键'id'是Guid.我知道如何在C#代码中创建一个新的Guid,但在存储过程中,我不确定如何为主键值生成新的Guid.
有人可以帮帮我吗?
谢谢!
Ada*_*rad 172
使用SQL Server,您可以使用NEWID功能.您正在使用C#,所以我假设您正在使用SQL Server.我敢肯定其他数据库系统也有类似的功能.
select NEWID()
Run Code Online (Sandbox Code Playgroud)
如果您使用的是Oracle,则可以使用该SYS_GUID()功能.查看此问题的答案:在Oracle中生成GUID
Ada*_*rad 12
您没有在问题中询问此问题,但我认为值得指出的是,使用GUID作为主键并不总是一个好主意.虽然很简单,但在索引中使用GUID时会影响性能.您是否考虑过使用一个整数值的Identity列?
以下是一些可能有助于阅读的文章.