如何通知我的 WPF 应用程序我的 SQL 查询在插入数据库时跳过了重复的行?
How to notify my WPF application that my SQL query skipped duplicate rows when inserting to database?
我正在使用 WHERE NOT EXISTS
SQL 语句在执行 INSERT
时过滤掉重复项。
如何通知我的 WPF 应用程序用户已跳过重复项?
我最终使用了 SQL 变量 @@ROWCOUNT
。
将其添加到我的存储过程中:
CREATE PROCEDURE [dbo].[p_procedure_name]
@rowCount int output
AS
BEGIN TRANSACTION
SET NOCOUNT ON
INSERT INTO [dbo].[table_name] (/* column list */)
SELECT /* columns */
FROM [dbo].[another_table_name]
SET @rowCount = @@ROWCOUNT
RETURN
COMMIT TRANSACTION
然后,在我的 C# 代码中:
SqlParameter param = new();
param.SqlDbType = SqlDbType.Int;
param.Direction = ParameterDirection.Output;
cmd.Parameters.Add(param);
dr = cmd.ExecuteReader();
dr.Close();
int rows = cmd.Parameters["@rowCount"].Value.ToString();
我正在使用 WHERE NOT EXISTS
SQL 语句在执行 INSERT
时过滤掉重复项。
如何通知我的 WPF 应用程序用户已跳过重复项?
我最终使用了 SQL 变量 @@ROWCOUNT
。
将其添加到我的存储过程中:
CREATE PROCEDURE [dbo].[p_procedure_name]
@rowCount int output
AS
BEGIN TRANSACTION
SET NOCOUNT ON
INSERT INTO [dbo].[table_name] (/* column list */)
SELECT /* columns */
FROM [dbo].[another_table_name]
SET @rowCount = @@ROWCOUNT
RETURN
COMMIT TRANSACTION
然后,在我的 C# 代码中:
SqlParameter param = new();
param.SqlDbType = SqlDbType.Int;
param.Direction = ParameterDirection.Output;
cmd.Parameters.Add(param);
dr = cmd.ExecuteReader();
dr.Close();
int rows = cmd.Parameters["@rowCount"].Value.ToString();