[C#] 連結SQLServer

要使用C#連接到SQL Server主要為三個步驟

SqlConnection
SqlCommand
SqlDataReader

注意需引用using System.Data.SqlClient


SqlConnection:
建立SQL Server連線
須注意伺服器名稱最後為分號

        private void ConnectSQLServer(ref SqlConnection conn)
        {
            string strConn =
                "Data Source=172.16.2.17\\RJDB,1433;" +
                "Initial catalog=Drawings_Demo2;" +
                "User ID=user;" +
                "Password=1234;" +
                "Integrated Security = False";//False才會使用SQL帳號認證
            conn = new SqlConnection(strConn);
        }

再來就是把SQL語法丟進SqlCommannd中,查到的資料會存在SqlDataReader物件中

        private SqlDataReader SqlQuest(string str)
        {
            ConnectSQLServer(ref myConn);
            myConn.Open();

            SqlCommand myCommand = new SqlCommand(str, myConn);
            SqlDataReader dr = myCommand.ExecuteReader();
            return dr;
        }

將SqlDataReader中的資料複製到DataTable中
 
private DataTable _maintable;
public ResultClass(SqlDataReader dr)
        {
            _maintable = new DataTable();
            for (int i = 0; i < dr.FieldCount; i++)
            {
                DataColumn col = new DataColumn(dr.GetName(i), dr.GetFieldType(i));
                _maintable.Columns.Add(col);
            }
            while (dr.Read())
            {
                DataRow r = _maintable.NewRow();
                for (int i = 0; i < dr.FieldCount; i++)
                    r[i] = dr[i];
                _maintable.Rows.Add(r);
            }
        }

如果要顯示這個DataTable
只要將DataGridView的DataSource設成這個DataTable即可
dataGridView1.DataSource = dataTable1;

留言

這個網誌中的熱門文章

[C#] WinForm動態側邊欄

[SQL Server] 不允許儲存變更

[C#] Windows Form 自訂控制項