在LINQ-To-SQL中手动设置标识字段(IDENTITY INSERT),可以通过以下步骤实现:
CREATE TABLE Products
(
ProductID INT IDENTITY(1,1) PRIMARY KEY,
ProductName NVARCHAR(50) NOT NULL,
Price DECIMAL(10,2) NOT NULL
)
using System.Data.Linq;
using System.Data.SqlClient;
public void InsertProduct(int productID, string productName, decimal price)
{
// 创建一个新的DataContext实例
DataContext db = new DataContext();
// 创建一个SqlConnection对象
SqlConnection conn = (SqlConnection)db.Connection;
// 打开数据库连接
conn.Open();
// 创建一个SqlCommand对象
SqlCommand cmd = new SqlCommand("SET IDENTITY_INSERT Products ON; INSERT INTO Products (ProductID, ProductName, Price) VALUES (@ProductID, @ProductName, @Price); SET IDENTITY_INSERT Products OFF;", conn);
// 添加参数
cmd.Parameters.AddWithValue("@ProductID", productID);
cmd.Parameters.AddWithValue("@ProductName", productName);
cmd.Parameters.AddWithValue("@Price", price);
// 执行命令
cmd.ExecuteNonQuery();
// 关闭数据库连接
conn.Close();
}
InsertProduct(1, "Product1", 100.00m);
通过以上步骤,我们可以在LINQ-To-SQL中手动设置标识字段(IDENTITY INSERT)。需要注意的是,在执行插入操作时,务必确保插入的数据不会与已有数据冲突,以免出现错误。
领取专属 10元无门槛券
手把手带您无忧上云