Sql 如何在存储过程的虚拟表中声明自动递增变量
我有一个这样的存储过程Sql 如何在存储过程的虚拟表中声明自动递增变量,sql,auto-increment,Sql,Auto Increment,我有一个这样的存储过程 create procedure onedata as begin declare @input_data table (Id int NOT NULL AUTO_INCREMENT, name varchar(500) . .... ) insert into @input_data ..... .... end 但我无法将Id声明为自动递增。显示出一些错误。请建议一些解决方案 提前感谢这取决于您使用的SQL的种类 对于SQL Server declare
create procedure onedata
as
begin
declare @input_data table (Id int NOT NULL AUTO_INCREMENT, name varchar(500) . .... )
insert into @input_data .....
....
end
但我无法将Id声明为自动递增。显示出一些错误。请建议一些解决方案
提前感谢这取决于您使用的SQL的种类 对于SQL Server
declare @input_data table (Id int NOT NULL identity(1,1), name varchar(50))
根据您的语法,我猜您正在使用SQL Server。如果是,请使用
identity
而不是auto_increment
:
declare @input_data table (Id int primary key identity, ... )
请仔细阅读所有写在这里的评论…我想它会对你有帮助