數據庫的連接以及實現控制檯對對數據的增刪查改

舉了四個連接數據庫的簡單例子,(其中有註釋與解析)

1、接下來是第一個往數據庫裏添加數據:

 static void Main(string[] args)     

        {
            #region 數據庫添加數據                                        //用戶鍵入數據,傳給變量
          /*  Console.Write("請輸入用戶名:");
            string user = Console.ReadLine();
            Console.Write("請輸入密碼:");
            string password = Console.ReadLine();
            Console.Write("請輸入真實姓名:");
            string real = Console.ReadLine();
            Console.Write("請輸入手機號:");
            string mobile = Console.ReadLine();
            Console.Write("請輸入地址:");
            string address = Console.ReadLine();
            Console.Write("請輸入Card:");
            string card = Console.ReadLine();
             string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";  //這裏纔是真正的連接服務器。
             SqlConnection conn = new SqlConnection(sqlconn);
             conn.Open();                                                                               //創建對象打開服務器
             SqlCommand com = conn.CreateCommand();
             com.CommandText = "insert into T_USer                                values(@username,@password,@realname,@mobile,@address,@card)";     //編輯需要對數據庫操作的命令
             com.Parameters.AddWithValue("@username", user);                                   //變量裏的數據傳給佔位符
             com.Parameters.AddWithValue("@password", password);
             com.Parameters.AddWithValue("@realname", real);
             com.Parameters.AddWithValue("@mobile", mobile);
             com.Parameters.AddWithValue("@address", address);
             com.Parameters.AddWithValue("@card", card);
             com.ExecuteNonQuery();                                                                       //開始執行命令
             com.Dispose();                                               
             conn.Close();                                                                                    //執行操作後關閉服務器如果不關閉連接,這個操作標識就會永遠存在,消耗服務器資源。特別是有海量數據存取的時候,對服務器性能的影響相當巨大。及時關閉數據庫操作鏈接是數據優化提高網站系統性能重要方面。

             conn.Dispose();
             Console.WriteLine("添加成功!!");
             Console.Read();*/

            #endregion

2、刪除數據中的數據

            #region 刪除數據庫中的數據
          /*  Console.Write("請輸入需要刪除的Id:");
            int id;
            int.TryParse(Console.ReadLine(),out id);
            string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
            SqlConnection conn = new SqlConnection(sqlconn);
            conn.Open();
            SqlCommand com = conn.CreateCommand();
            com.CommandText = "delete from T_User where Id=@id";
            com.Parameters.AddWithValue("@id", id);
            com.ExecuteNonQuery();
            Console.WriteLine("刪除成功!");
            com.Dispose();
            conn.Close();
            conn.Dispose();
            Console.Read();*/

             #endregion

3、查詢數據庫中的數據,這裏用了兩個做法,不過原理都一樣,一個用了雙重循環,但是給不了一個別名,一個直接寫的下標

             #region 查詢數據庫
             /*  string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
            SqlConnection conn = new SqlConnection(sqlconn);
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from T_USer";
            SqlDataAdapter adapter = new SqlDataAdapter(cmd);
            DataTable dt = new DataTable();
            adapter.Fill(dt);
            for (int i = 0; i < dt.Rows.Count; i++)                                                //!!注意在寫查詢語句的時候不要字段拼接,否則會出現注入漏洞
            {
                Console.WriteLine("ID:{0}用戶姓名:{1}密碼:{2}真實姓名:{3}手機:{4}地址:{5}Card{6}",dt.Rows[i][0],dt.Rows[i][1], dt.Rows[i][2], dt.Rows[i][3], dt.Rows[i][4], dt.Rows[i][5], dt.Rows[i][6]);
            //    for (int j = 0; j < dt.Columns.Count; j++)                                   //這是雙重循環的,但已經被註釋掉了
            //{
            //    string id = dt.Rows[i][j].ToString();
            //    string id1 = dt.Rows[i][j].ToString();
            //    string id2 = dt.Rows[i][j].ToString();
            //    string id3 = dt.Rows[i][j].ToString();
            //    string id4 = dt.Rows[i][j].ToString();
            //    string id5 = dt.Rows[i][j].ToString();
            //    string id6 = dt.Rows[i][j].ToString();
            //    Console.WriteLine(id, id1, id2,id3,id4,id5,id6);
            //}


            }*/

            #endregion

4、控制檯修改數據庫中的數據

            #region 修改數據庫中的數據
           /* Console.Write("請輸入修改用戶名的Id:");
            int id;
            int.TryParse( Console.ReadLine(),out id);
            Console.Write("請輸入你修改的用戶名:");                            //同樣也是鍵入數據,
            string name=Console.ReadLine().ToString();
            string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
            SqlConnection conn = new SqlConnection(sqlconn);
            conn.Open();
            SqlCommand com = conn.CreateCommand();
            com.CommandText = ("update T_User set UerName=@username where Id=@id");      //操作命令增加限制條件,限制需要修改的字段。
            com.Parameters.AddWithValue("@id", id);
            com.Parameters.AddWithValue("@username", name);
            com.ExecuteNonQuery();
            Console.WriteLine("修改成功!");
            com.Dispose();
            conn.Close();
            conn.Dispose();*/
            Console.Read();
            #endregion       

        }

      小結:總之連接數據庫格式爲:

Const SqlDatabaseName = "數據庫名"

Const SqlPassword = "用戶密碼"

Const SqlUsername = "用戶名"

Const SqlLocalName = "(local)"

dim conn 

set conn=server.createobject("ADODB.connection") 

conn.open "Provider=Sqloledb;User ID="&SqlUsername&";Password="&SqlPassword&";Initial Catalog="&SqlDatabaseName& ";Data Source="&SqlLocalName&";"
(如有錯誤,歡迎修改)

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