C# ADO.NET SqlCommand - ExecuteNonQuery

The ExecuteNonQuery() method is a commonly utilized feature within the SqlCommand Object, serving as a crucial tool for executing statements that do not yield result sets. This method is specifically designed for performing actions such as inserting data, updating data, and other similar operations, where the focus lies in modifying the underlying data rather than retrieving result sets.

ExecuteNonQuery() method

By invoking the ExecuteNonQuery() method, developers can seamlessly execute these non-query statements, effectuating changes within the connected data source without the need for result set retrieval. This streamlined approach ensures efficient and optimized execution of data manipulation operations, enabling the smooth modification of data records.


The ExecuteNonQuery() method stands as a key component within the SqlCommand Object, empowering developers to execute essential database operations that involve data insertion, updates, and other non-result-set generating actions. Its utilization enhances the overall functionality and effectiveness of data management tasks within the ADO.NET framework.

Data Manipulation and Data Definition tasks

The ExecuteNonQuery() method of the SqlCommand Object serves a crucial role in executing both Data Definition tasks and Data Manipulation tasks. It encompasses a broad range of functionality, enabling developers to perform various operations on the connected data source.

When it comes to Data Definition tasks, such as creating Stored Procedures or Views, the ExecuteNonQuery() method proves to be an indispensable tool. It facilitates the execution of these tasks by interacting directly with the underlying database system, allowing for seamless creation and modification of database objects.

The following C# example shows how to use the method ExecuteNonQuery() through SqlCommand Object.

Full Source C#
using System; using System.Windows.Forms; using System.Data.SqlClient; namespace WindowsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { string connetionString = null; SqlConnection cnn ; SqlCommand cmd ; string sql = null; connetionString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password"; sql = "Your SQL Statemnt Here"; cnn = new SqlConnection(connetionString); try { cnn.Open(); cmd = new SqlCommand(sql, cnn); cmd.ExecuteNonQuery(); cmd.Dispose(); cnn.Close(); MessageBox.Show (" ExecuteNonQuery in SqlCommand executed !!"); } catch (Exception ex) { MessageBox.Show("Can not open connection ! "); } } } }

Similarly, Data Manipulation tasks, including Inserting, Updating, Deleting, and other related operations, are efficiently handled by the ExecuteNonQuery() method. By invoking this method, developers can effortlessly execute these data manipulation tasks, effectively modifying the records within the connected data source.

The versatility of the ExecuteNonQuery() method within the SqlCommand Object enables it to fulfill both Data Definition and Data Manipulation requirements. This comprehensive functionality empowers developers to seamlessly manage and manipulate data within the database, streamlining the overall data management process.


The ExecuteNonQuery() method of the SqlCommand Object plays a vital role in performing both Data Definition and Data Manipulation tasks. Its utilization enables developers to create database objects, modify data, and execute various non-query operations, contributing to efficient and effective data management within the ADO.NET framework.