我需要在数据库中创建一个新员工,并且需要使用自动生成的 EmployeeID。
找不到程序需要编写的方式并在我的 c# 代码中使用自动生成的值。
请帮帮我谢谢
我需要在数据库中创建一个新员工,并且需要使用自动生成的 EmployeeID。
找不到程序需要编写的方式并在我的 c# 代码中使用自动生成的值。
请帮帮我谢谢
SCOPE_IDENTITY() 函数返回当前 SQL 执行范围内最近创建的标识值,并且是在刚刚执行 INSERT 的存储过程中查找 ID 的推荐方法。
INSERT INTO YourTable(col1, col2) VALUES "abc", "xyz";
SELECT SCOPE_IDENTITY();
您可以将存储过程中的值返回给您的 C# 客户端 1) 通过使用 SELECT(如上所述)作为数据集,或者,2) 作为存储过程的返回值,或者 3) 通过将其传递回 OUTPUT在存储过程中声明的参数。
像这样 :
using (var connection = new SqlCeConnection(Settings.Default.Database1ConnectionString))
using (var command = connection.CreateCommand())
{
connection.Open();
command.CommandText = @"
INSERT Test (Name)
VALUES (@TestName)
";
command.Parameters.AddWithValue("TestName", "SomeName");
command.ExecuteNonQuery();
command.CommandText = "SELECT SCOPE_IDENTITY()";
int id = command.ExecuteScalar();
}