यदि आपकी स्क्रिप्ट फ़ाइल में कई प्रश्न हैं, तो आपको @rowsAffected
के साथ अपनी स्क्रिप्ट को बेहतर बनाना चाहिए चर जैसा कि नीचे टी-एसक्यूएल में दिखाया गया है। फिर, अपने C# कोड में आपको ExecuteScalar . पर कॉल करना होगा अपनी स्क्रिप्ट से विस्तृत पंक्तियों को प्रभावित करने के लिए।
**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;
आपको अपनी स्क्रिप्ट फ़ाइल से पाठ पढ़ना होगा, जैसा कि आप अपने कोड में कर रहे हैं, और फिर नीचे स्निपेट में कोड निष्पादित करने से पहले फ़ाइल से पढ़े गए पाठ का उपयोग करके एक कमांड ऑब्जेक्ट बनाएं।
सी# कोड ऊपर स्क्रिप्ट निष्पादित करने के लिए
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
आपके मूल कोड का उपयोग करते हुए विस्तृत C# कोड
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);
}
}