Jika Anda memiliki beberapa kueri dalam file skrip, Anda harus menyempurnakan skrip dengan @rowsAffected
variabel seperti yang ditunjukkan pada T-SQL di bawah ini. Kemudian, dalam kode C# Anda, Anda perlu memanggil ExecuteScalar untuk mendapatkan detail baris yang terpengaruh oleh skrip Anda.
**Script file with @rowsAffected variable logic**
--add following variable at start of your script
DECLARE @rowsAffected VARCHAR(2000);
INSERT INTO [dbo].[Products] ([ProductName]) VALUES ('sun1'),('sun2'),('sun3');
--after each query that you want to track, include the following line
SET @rowsAffected = 'Products : ' + CAST(@@rowcount AS varchar(20));
UPDATE [dbo].[newTable] SET [ColB] = 'b' ,[ColC] = 'd',[ColD] = 'e' ,[ColE] = 'f' WHERE ColA='a';
--after each query that you want to track, include the following line
SET @rowsAffected = @rowsAffected + ', newTable : ' + CAST(@@rowcount AS varchar(20));
-- add the query below at end of your script
SELECT @rowsAffected;
Anda harus membaca teks dari file skrip Anda, seperti yang Anda lakukan dalam kode Anda, dan kemudian membuat objek perintah menggunakan teks yang dibaca dari file sebelum mengeksekusi kode dalam cuplikan di bawah ini.
Kode C# untuk mengeksekusi skrip di atas
string rowsAffected =(string) command.ExecuteScalar();
//you can now use rowsAffected variable in any way you like
//it will contain something like Table1 : 4, Table2 : 6
Kode C# mendetail menggunakan kode asli Anda
using (SqlConnection con = new SqlConnection(constr))
{
FileInfo file = new FileInfo(DIRECTORY OF THE SCRIPT);
string script = file.OpenText().ReadToEnd();
SqlCommand command = new SqlCommand(script, con);
command.CommandType = CommandType.Text;
try
{
con.Open();
string rowsAffected =(string) command.ExecuteScalar();
Display( rowsAffected);
con.Close();
}
catch (Exception ex)
{
con.Close();
Display(ex.Message);
}
}