使用ExecuteNonQuery()操作數據

函數ExecuteNonQuery()可以對數據庫執行更新,插入,刪除操作,並返回操作影響的行數,若執行語句不是SQL語句,則返回-1,應用實例如下:

配置文件信息:

  <connectionStrings>
    <add name ="SQLCONNECTIONSTRING" connectionString =" data Source = localhost;database = hrmbook;user id = sa;pwd = sa" providerName = "System.Data.SqlClient"></add>
  </connectionStrings>

程序代碼如下:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class DataQuery : System.Web.UI.Page
{
    private string myConnectionString = ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ConnectionString;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            TestDataQuery();
            Response.End();
        }
    }
    private void TestDataQuery()
    {
        //創建SqlConnection
        SqlConnection myConnection = new SqlConnection(myConnectionString);
        string cmdText = "INSERT INTO 職員基本信息表(內部編號,職員編號,姓名,性別) VALUES(80,'sr8888','newUser','男')";
        SqlCommand myCommand = new SqlCommand(cmdText, myConnection);
        SqlDataReader mydr;
        string drcmdText = "SELECT TOP 5 * FROM 職員基本信息表 ORDER BY 內部編號 DESC";
        try
        {
            //打開數據庫鏈接
            myConnection.Open();
            //插入數據
            int nCount = myCommand.ExecuteNonQuery();
            Response.Write("插入" + nCount.ToString() + "條新記錄.<br>");
            //顯示數據
            myCommand.CommandText = drcmdText;
            mydr = myCommand.ExecuteReader();
            PrintData(mydr);
            //修改數據
            cmdText = "UPDATE 職員基本信息表 SET 性別 = '女' WHERE 內部編號 = 80";
            myCommand.CommandText = cmdText;
            myCommand.ExecuteNonQuery();
            Response.Write("修改" + nCount.ToString() + "條新記錄.<br>");
            myCommand.CommandText = drcmdText;
            mydr = myCommand.ExecuteReader();
            PrintData(mydr);
            //刪除數據
            cmdText = "DELETE 職員基本信息表 WHERE 內部編號 = 80";
            myCommand.CommandText = cmdText;
            myCommand.ExecuteNonQuery();
            Response.Write("刪除" + nCount.ToString() + "條新記錄.<br>");
            //顯示數據
            myCommand.CommandText = drcmdText;
            mydr = myCommand.ExecuteReader();
            PrintData(mydr);
        }
        catch (SqlException sqlex)
        {
            Response.Write(sqlex.Message + "<br>");
        }
        finally
        {
            myConnection.Close();
        }
    }
    private void PrintData(SqlDataReader mydr)
    {
        while (mydr.Read())
        {
            //向列表中添加Item項
            Response.Write(mydr["姓名"]  + "----" +
            //讀取姓名
            mydr["性別"] + "<br>");
        }
        mydr.Close();
    }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章