C#窗體-數(shù)據(jù)庫(kù)連接及登錄功能的實(shí)現(xiàn)案例
本篇文章介紹了C#窗體的數(shù)據(jù)庫(kù)連接及登錄功能的實(shí)現(xiàn)
工具或平臺(tái):VS2010、sqlserver2012
1.創(chuàng)建完窗體后,點(diǎn)擊數(shù)據(jù),選擇添加新數(shù)據(jù)源

2.選擇數(shù)據(jù)庫(kù)

3.選擇數(shù)據(jù)集

4.新建連接-Microsoft SQL Server,添加完測(cè)試一下

5.添加數(shù)據(jù)庫(kù)-注意把連接字符串部分復(fù)制一下,一會(huì)兒要用的

6.保存連接字符串到配置文件中

7.選擇需要用數(shù)據(jù)庫(kù)的那些部分,由于我的工程較小,僅選擇了表,讀者根據(jù)需要自行添加

8.引入與數(shù)據(jù)庫(kù)相關(guān)的命名空間(using System.Data.SqlClient;//加入數(shù)據(jù)庫(kù)命名空間)

9.添加兩個(gè)文本框、標(biāo)簽及一個(gè)按鈕、一個(gè)pannel容器,修改屬性

10.添加密碼的填充字符
private void textBox2_TextChanged(object sender, EventArgs e)
{
this.textBox2.PasswordChar = '*';
}
11.添加按鈕點(diǎn)擊事件
private void button1_Click(object sender, EventArgs e) //登錄按鈕點(diǎn)擊事件
{
//獲取文本框中的值
string userid = this.textBox1.Text;
string password = this.textBox2.Text;
if (userid.Equals("") || password.Equals(""))//用戶名或密碼為空
{
MessageBox.Show("用戶名或密碼不能為空");
}
else//用戶名或密碼不為空
{
string connectionString = "Data Source=SC-201609191651;Initial Catalog=BigWork;Persist Security Info=True;User ID=sa;Password=qwe1314521";
SqlConnection SqlCon = new SqlConnection(connectionString); //數(shù)據(jù)庫(kù)連接
SqlCon.Open(); //打開數(shù)據(jù)庫(kù)
string sql = "Select * from users where userid='" + userid + "' and userpwd='" + password + "'";//查找用戶sql語(yǔ)句
SqlCommand cmd = new SqlCommand(sql,SqlCon);
cmd.CommandType = CommandType.Text;
SqlDataReader sdr;
sdr = cmd.ExecuteReader();
if (sdr.Read()) //從結(jié)果中找到
{
MessageBox.Show("登錄成功", "提示");
}
else
{
MessageBox.Show("用戶名或密碼錯(cuò)誤", "提示");
return;
}
}
panel1.Visible = false;
}
12.運(yùn)行結(jié)果

補(bǔ)充知識(shí):c#windowform連接數(shù)據(jù)庫(kù)的兩種方法
一、 純操作實(shí)現(xiàn)
第一步:數(shù)據(jù)庫(kù)操作
1、打開SqlServer2005的企業(yè)管理器,如果當(dāng)前運(yùn)行的不是local服務(wù)器,則將其刪除,接著新建SqlServer注冊(cè),添加local,實(shí)現(xiàn)注冊(cè)。
2、右擊local下的數(shù)據(jù)庫(kù),選擇所有任務(wù),再選擇附加數(shù)據(jù)庫(kù),將會(huì)彈出附加數(shù)據(jù)庫(kù)窗口,選擇你將要附加的數(shù)據(jù),數(shù)據(jù)庫(kù)名及數(shù)據(jù)庫(kù)用戶名,然后確定,附加成功。
注意:當(dāng)數(shù)據(jù)庫(kù)用完后,需要分離數(shù)據(jù)庫(kù),然后將其保存。右擊數(shù)據(jù)庫(kù)---所有任務(wù)---分離數(shù)據(jù)庫(kù),則完成。
第二步:Vistualstudio中操作
1、 新建項(xiàng)目,選擇windows窗體應(yīng)用程序。
2、 在form1窗體中,添加工具箱---數(shù)據(jù)---DataGridview
3、 選擇DataGridview上邊框的三角符合,選擇選擇數(shù)據(jù)源下添加項(xiàng)目數(shù)據(jù)源,然后選擇數(shù)據(jù)庫(kù),下一步選擇新建連接下的SqlServer,然后繼續(xù),彈出添加連接窗口,在該窗口中的服務(wù)器名下填寫英文點(diǎn)號(hào)(.),登陸到服務(wù)器選擇使用SqlServer身份驗(yàn)證,填寫數(shù)據(jù)庫(kù)用戶名和密碼,然后選擇你的數(shù)據(jù)庫(kù),然后測(cè)試連接,如果成功則說明連接成功。
4、 在VistualStudio中運(yùn)行你的文件,這時(shí)form1中添加的DataGridview中會(huì)出現(xiàn)逆的數(shù)據(jù)表。
二、代碼實(shí)現(xiàn)
1、 新建項(xiàng)目,選擇windows窗體應(yīng)用程序。
2、 在form1窗體中,添加工具箱中數(shù)據(jù)中的---DataGridview
3、雙擊,form1窗體,首先在form1的頭部添加兩條:using System.data;using System.data.Sqlclient 。然后再form1_load()事件中編寫如下代碼:
String constr=”data source=.;intial catalog=student;user id=sa;password=”; //連接數(shù)據(jù)庫(kù)服務(wù)器 SqlConnection conn=new SqlConnection(constr); //SQL連接類的實(shí)例化 Conn.open(); //打開數(shù)據(jù)庫(kù) Messagebox.show(“連接成功!”); //彈出窗口,用于測(cè)試數(shù)據(jù)庫(kù)連接是否成功。 String sql=“select * from student”; //執(zhí)行的查詢語(yǔ)句 SqlDataAdapeter find=new SqlDataAdapter(sql,conn); // 創(chuàng)建DataAdapter數(shù)據(jù)適配器實(shí)例,SqlDataAdapter作用是 DataSet和 SQL Server之間的橋接器,用于檢索和保存數(shù)據(jù) DataSet save=new DataSet(); //創(chuàng)建DataSet實(shí)例 find.Fill(save,"wu"); // 使用DataAdapter的Fill方法(填充),調(diào)用SELECT命令 fill(對(duì)象名,"自定義虛擬表名") DataGridView1.Datasource=save.Tables[0]; // 向DataGridView1中填充數(shù)據(jù) conn.close(); //關(guān)閉數(shù)據(jù)庫(kù)
以上這篇C#窗體-數(shù)據(jù)庫(kù)連接及登錄功能的實(shí)現(xiàn)案例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- C#連接SQL數(shù)據(jù)庫(kù)和查詢數(shù)據(jù)功能的操作技巧
- C# TreeView從數(shù)據(jù)庫(kù)綁定數(shù)據(jù)的示例
- C#從數(shù)據(jù)庫(kù)讀取圖片并保存的兩種方法
- C# 創(chuàng)建MDB數(shù)據(jù)庫(kù)、并存放表格數(shù)據(jù)的案例
- C#使用SqlServer作為日志數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)
- C#連接SQL Server數(shù)據(jù)庫(kù)的實(shí)例講解
- C#連接Oracle數(shù)據(jù)庫(kù)字符串(引入DLL)的方式
- C# Ado.net實(shí)現(xiàn)讀取SQLServer數(shù)據(jù)庫(kù)存儲(chǔ)過程列表及參數(shù)信息示例
- c#使用FreeSql生產(chǎn)環(huán)境時(shí)自動(dòng)升級(jí)備份數(shù)據(jù)庫(kù)
相關(guān)文章
C# WinForm實(shí)現(xiàn)Win7 Aero透明效果代碼
這篇文章主要介紹了C# WinForm實(shí)現(xiàn)Win7 Aero透明效果代碼,通過調(diào)用dwmapi.dll相關(guān)方法實(shí)現(xiàn),需要的朋友可以參考下2014-07-07
C#中dictionary如何根據(jù)索引值獲取Key值
這篇文章主要介紹了C#中dictionary如何根據(jù)索引值獲取Key值問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04
c#禁止通過拖動(dòng),雙擊標(biāo)題欄改變窗體大小的方法
今天小編就為大家分享一篇c#禁止通過拖動(dòng),雙擊標(biāo)題欄改變窗體大小的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12
對(duì)指定的網(wǎng)頁(yè)進(jìn)行截圖的效果 C#版
對(duì)指定的網(wǎng)頁(yè)進(jìn)行截圖的效果 C#版...2007-08-08
C#實(shí)現(xiàn)拷貝文件的9種方法小結(jié)
最近遇一個(gè)問題,一個(gè)程序調(diào)用另一個(gè)程序的文件,結(jié)果另一個(gè)程序的文件被占用,使用不了文件,這時(shí)候的解決方案就是把另一個(gè)程序的文件拷貝到當(dāng)前程序就可以了,本文介紹用C#拷貝文件的多種方式,需要的朋友可以參考下2024-04-04

