目錄
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