C#連接Mysql數(shù)據(jù)庫詳細(xì)教程(內(nèi)附Mysql及Navicat)
課上教學(xué)使用的是SqlServer數(shù)據(jù)庫,由于SqlServer數(shù)據(jù)庫配置難以理解,故學(xué)習(xí)使用Mysql代替數(shù)據(jù)庫連接。(Mysql以及Navicat安裝說明在壓縮包內(nèi))
會自動在C:\Program Files (x86)\MySQL\MySQL Connector Net 6.9.0這個(gè)路徑(貌似...)
之后就需要在VS的引用中引用這一文件,然后就可以進(jìn)行數(shù)據(jù)庫的連接操作了。
首先新建項(xiàng)目,選擇Windows窗體應(yīng)用程序創(chuàng)建一個(gè)窗體
將窗體加上組件設(shè)置為下圖所示樣式(可以自由發(fā)揮,只要包含相關(guān)輸入即可)
創(chuàng)建connect.cs的類文件(這里是我為后續(xù)創(chuàng)建信息系統(tǒng)方便設(shè)置的集成類,可以通過調(diào)用該類少寫些代碼)
其中需要在開頭加入using MySql.Data.MySqlClient;
并在類中定義好三個(gè)對象
public MySqlConnection conn = null;//連接對象
public MySqlCommand comm = null;//語句執(zhí)行對象
public MySqlDataReader dr = null;//語句執(zhí)行結(jié)果數(shù)據(jù)對象
再使用load()方法封裝連接過程,這里就需要自行輸入數(shù)據(jù)庫的相關(guān)信息
using System; using System.Collections.Generic; using System.Linq; using System.Text; using MySql.Data.MySqlClient; namespace DataBaseManager { class connect { public MySqlConnection conn = null;//連接對象 public MySqlCommand comm = null;//語句執(zhí)行對象 public MySqlDataReader dr = null;//語句執(zhí)行結(jié)果數(shù)據(jù)對象 //用于一個(gè)窗口讓用戶自定義輸入用戶名與密碼,在這里我直接定義好了 //public string uid; //public string pwd; public void load() { //直接寫鏈接語句,比較容易出錯(cuò) //conn = new MySqlConnection( // "Database = data;Server = localhost;Port = 3306;Password = " + pwd + ";UserID = " + uid + ";charset = utf8mb4"); //conn.Open(); //使用Builder寫語句,實(shí)現(xiàn)分段 //與數(shù)據(jù)庫連接的信息 MySqlConnectionStringBuilder builder = new MySqlConnectionStringBuilder(); //數(shù)據(jù)庫連接時(shí)的用戶名,可以用pid builder.UserID = "root"; //數(shù)據(jù)庫連接時(shí)的密碼,可以用pwd builder.Password = "admin"; //數(shù)據(jù)庫連接時(shí)的服務(wù)器地址 builder.Server = "localhost"; //要連接的數(shù)據(jù)庫 builder.Database = "data"; //定義與數(shù)據(jù)連接的鏈接 conn = new MySqlConnection(builder.ConnectionString); //打開這個(gè)鏈接 conn.Open(); } } }
之后雙擊窗體中的button,定義輸入方法驗(yàn)證連接。
private void button1_Click(object sender, EventArgs e) { //con.uid = textBox1.Text; //con.pwd = textBox2.Text; //調(diào)用load方法建立open連接 con.load(); //查詢語句,查詢用戶名與密碼,這里的ls可以是textBox1.Text string sql = "select * from user_info where username ='ls';"; con.comm = new MySqlCommand(sql, con.conn); con.dr = con.comm.ExecuteReader(); con.dr.Read(); //驗(yàn)證密碼,同理,這里的123可以是textBox2.Text,因?yàn)槲覕?shù)據(jù)庫設(shè)置的密碼與賬號是ls 與 123 所以無論輸入什么都是登陸成功 if ("123" == con.dr.GetString("password")) { MessageBox.Show("登錄成功!"); con.dr.Close(); this.Close();//關(guān)閉此窗口,方便彈出主窗口 } else MessageBox.Show("登錄失?。?); }
如果你在connect中輸入信息有誤,一般會出現(xiàn)如下錯(cuò)誤,此時(shí)就需要檢查賬號密碼是否正確
而如果數(shù)據(jù)庫輸入錯(cuò)誤,會顯示這個(gè)錯(cuò)誤
最后是相關(guān)數(shù)據(jù)庫,user_info表的結(jié)構(gòu),可以在引用完dll文件后后創(chuàng)建這個(gè)數(shù)據(jù)庫直接測試該C#窗體文件
另外,在壓縮包中還放入了一個(gè)簡易的具備CRUD功能的學(xué)生信息系統(tǒng),可以在深入學(xué)習(xí)后使用它進(jìn)行體驗(yàn)
下為學(xué)生信息的表結(jié)構(gòu),相關(guān)信息可以自己輸入
鏈接:https://pan.baidu.com/s/1Yg1aSgiydHQ1bevX5r3QCQ
提取碼:xyz3
以上就是C#連接Mysql數(shù)據(jù)庫詳細(xì)教程(內(nèi)附Mysql及Navicat)的詳細(xì)內(nèi)容,更多關(guān)于C#連接Mysql數(shù)據(jù)庫的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
c# 調(diào)用.bat文件的實(shí)現(xiàn)代碼
c# 調(diào)用.bat文件主要利用了using System.Diagnostics;命名空間,大家可以參考下。2009-06-06C#應(yīng)用BindingSource實(shí)現(xiàn)數(shù)據(jù)同步的方法
這篇文章主要介紹了C#應(yīng)用BindingSource實(shí)現(xiàn)數(shù)據(jù)同步的方法,需要的朋友可以參考下2014-08-08C#使用iTextSharp庫將圖片轉(zhuǎn)換為PDF
iTextSharp 是一個(gè)開源的 .NET 庫,主要用于創(chuàng)建和操作 PDF 文檔,本文主要介紹了如何使用 C# 和 iTextSharp 將圖片轉(zhuǎn)換為 PDF 的功能,需要的可以參考下2024-12-12使用C#和Jieba.NET實(shí)現(xiàn)中英文混合文本關(guān)鍵詞的提取功能
Jieba.NET?是一個(gè)在?C#?中實(shí)現(xiàn)的分詞庫,它基于?Java?的?jieba?分詞庫,并進(jìn)行了?C#?語言的移植,Jieba?是一個(gè)高效的中文分詞工具,能夠處理全模式、精確模式以及搜索引擎模式,本文給大家介紹了如何使用C#和Jieba.NET實(shí)現(xiàn)中英文混合文本關(guān)鍵詞的提取功能2025-03-03