C# 可以忽略从插入返回的b记录数。始终为“1”不假设参数中存在错误,因此在这种情况下不会插入记录。那个调用应该返回0,成功的调用应该返回1。我认为应该改为executeScaler,我想它已经在其他地方修复了这个问题。ExecuteScaler没有工作,您不知
C# 可以忽略从插入返回的b记录数。始终为“1”不假设参数中存在错误,因此在这种情况下不会插入记录。那个调用应该返回0,成功的调用应该返回1。我认为应该改为executeScaler,我想它已经在其他地方修复了这个问题。ExecuteScaler没有工作,您不知,c#,sql,stored-procedures,insert,C#,Sql,Stored Procedures,Insert,可以忽略从插入返回的b记录数。始终为“1”不假设参数中存在错误,因此在这种情况下不会插入记录。那个调用应该返回0,成功的调用应该返回1。我认为应该改为executeScaler,我想它已经在其他地方修复了这个问题。ExecuteScaler没有工作,您不知道如何插入行吗?我一次插入一行,但可能有10行等待插入,因此通过调用存储过程将所有行逐个插入循环(C代码)。从技术上讲,SP对10条记录调用10次,Insert调用10次?我不是专家:(所以你可以忽略插入的b记录数。它总是“1”不假设,参数中有
可以忽略从插入返回的b记录数。始终为“1”不假设参数中存在错误,因此在这种情况下不会插入记录。那个调用应该返回0,成功的调用应该返回1。我认为应该改为executeScaler,我想它已经在其他地方修复了这个问题。ExecuteScaler没有工作,您不知道如何插入行吗?我一次插入一行,但可能有10行等待插入,因此通过调用存储过程将所有行逐个插入循环(C代码)。从技术上讲,SP对10条记录调用10次,Insert调用10次?我不是专家:(所以你可以忽略插入的b记录数。它总是“1”不假设,参数中有错误,因此在这种情况下不会插入记录。该调用应返回0,成功调用返回1。目标是插入的成功行总数。如果参数中有错误,例如,datetime字段中插入的数字,则插入可能不成功。我对结果不感兴趣完全插入触发器,我不想关注它(可能在将来)。目标是插入成功行的总数。如果参数中有错误,例如,datetime字段中插入的数字,则插入可能不成功。我对插入触发器的结果一点也不感兴趣,我也不想关注它(可能在将来)。
int records = sc.ExecuteNonQuery(); // works ok if trigger does not update the record
UPDATE students
SET status = 'Inactive'
FROM Inserted i
INNER JOIN students T2
ON i.sname = T2.sname
AND i.id <> t2.id
CREATE PROCEDURE sp_InsertSudent
-- Add the parameters for the stored procedure here
@student_name varchar(25) = null,
@status varchar(20) = null,
@renew varchar(15) = null,
@edate datetime = null
AS
BEGIN
--SET NOCOUNT ON;
insert into students VALUES(@student_name,@status,@renew,@edate)
END
GO
UPDATE CustomerTbl
SET [Account Status] = 'Inactive',
[End Date] = DateAdd(day,-1,[Supplier End Date]),
[EnrollmentStatus] = 'Waiting'
WHERE OET.[Account No] = (SELECT [Account No] FROM CustomerTbl WHERE id = @@identity)
AND id <> @@identity
UPDATE students
SET status = 'Inactive'
FROM Inserted i
INNER JOIN students T2
ON i.sname = T2.sname
AND i.id <> t2.id
AND status <> 'inactive'