SQL數據庫學習之路(練習)---C#登錄界面連數據庫


目錄

C#登錄界面連數據庫

一、在數據庫中先創建一個數據庫。

二、在VS中創建C#的windows窗體應用程序

三、在VS中連接到數據庫

四、設計登錄界面

五、設置注冊界面

六、將form1的按鈕和form2進行關聯

七、設置form2界面的注冊按鈕

八、form1的登錄按鈕設置

九、運行成果

參考文章:


C#登錄界面連數據庫

一、在數據庫中先創建一個數據庫。

數據庫命名為NamePwd,使用SQL語言創建兩個表,一個表命名為name,另一個表命名為pwd。在兩個表中都只創建一個列。

create table [name]
(
    Pname varchar(16)
)

create table [pwd]
(
    pwd varchar(32)
)

運行成功后顯示效果為:

二、在VS中創建C#的windows窗體應用程序

三、在VS中連接到數據庫

點擊服務器資源管理器,右鍵選擇數據連接,點擊添加連接。(也可以在工具中選擇連接數據庫)。

 

輸入數據庫的名,在選擇或輸入數據庫名稱中選擇剛剛創建好的NamePwd數據庫。測試連接成功后,點擊確定。

四、設計登錄界面

選擇工具箱窗口,組成界面form1。

五、設置注冊界面

選擇解決方案資源管理器,右鍵項目--添加--Windows窗體。創建第二個窗體form2.

通過工具箱對form2進行布局。

六、將form1的按鈕和form2進行關聯

雙擊form1的注冊按鈕,注冊按鈕代碼如下:

 private void button2_Click(object sender, EventArgs e)
        {
            using (Form2 dlg = new Form2()) //caozuo是窗口類名,確保訪問;后面的是構造函數
            {
                dlg.ShowDialog();
            }
        }

在運行之后,點擊注冊按鈕可以彈出form2界面。

七、設置form2界面的注冊按鈕

form2注冊按鈕代碼:

private void button1_Click(object sender, EventArgs e)
        {
            string connectionStr = "Data Source=DESKTOP-785QN2F;Initial Catalog=NamePwd;Persist Security Info=True;User ID=sa;Password=123456dyy";

            //創建連接對象
            SqlConnection myConnection = new SqlConnection(connectionStr);
                //測試是否連接成功
         

                string username = textBox1.Text; //獲取用戶名 

                string password = textBox2.Text; //獲取密碼


                string myinsert = "insert into namepwd values('"+username+"','"+password+"')";

                SqlCommand mycom = new SqlCommand(myinsert, myConnection);       //定義對象並連接數據庫

                myConnection.Open();//打開數據庫

                mycom.ExecuteNonQuery();                           //執行插入語句

                myConnection.Close();                //關閉對象並釋放所占內存空間    

                //  myConnection.Dispose();

                MessageBox.Show("注冊成功,請前往登錄界面登錄!");

              //  Test f2 = new Test();
              //  this.Close();
              //  f2.Show();
           
            
        }

注意: string connectionStr = "Data Source=*******;Initial Catalog=NamePwd;Persist Security Info=True;User ID=sa;Password=****";中的data source=數據庫名稱,password為SQL登錄密碼

八、form1的登錄按鈕設置

按鈕代碼如下:

private void button1_Click(object sender, EventArgs e)
        {
            string name = textBox1.Text;
            string pwd = textBox2.Text;

            if (name.Equals("") || pwd.Equals(""))//用戶名或密碼為空
            {
                MessageBox.Show("用戶名或密碼不能為空");
            }
            else  //到數據庫中驗證
            {
                string str = "Data Source=DESKTOP-785QN2F;Initial Catalog=NamePwd;Persist Security Info=True;User ID=sa;Password=123456dyy";
               
                string selectSql = "select count(*) from namepwd where Name='"+name+"' and pwd='"+pwd+"'";
               
                SqlConnection con = new SqlConnection(str); //創建連接對象 
                SqlCommand mycom = new SqlCommand(selectSql, con);       //定義對象並連接數據庫

                SqlCommand cmd = new SqlCommand(selectSql,con);//定義對象並連接數據庫
                cmd.CommandType = CommandType.Text;

                con.Open(); //打開連接 
                Console.WriteLine("數據庫打開");    //正常打印說明沒問題,否則會拋出異常
             //   SqlDataReader sqlDataReader = mycom.ExecuteReader();
               
               
                 if (Convert.ToInt64(cmd.ExecuteScalar())>0)//滿足用戶名與密碼一致,進入下一個界面
                  {
                      MessageBox.Show("登錄成功!");
                  }
                  else
                  {
                      MessageBox.Show("登錄失敗!\n"+"用戶名或密碼錯誤!");
                  }
                con.Close(); //關閉連接 
               
            }

        }

注意: string str = "Data Source=*******;Initial Catalog=NamePwd;Persist Security Info=True;User ID=sa;Password=****";中的data source=數據庫名稱,password為SQL登錄密碼

九、運行成果

點擊運行,點擊form1的注冊界面。

可以在SQL數據中查詢剛剛注冊的用戶信息。

select *from name

select *from pwd

 

參考文章:

https://blog.csdn.net/qq_36171287/article/details/83714547

https://blog.csdn.net/qq_38830964/article/details/84036635


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM