c# 連接Mysql資料庫

来源:http://www.cnblogs.com/shouce/archive/2016/05/27/5533342.html
-Advertisement-
Play Games

mysql.data.dll下載_c#連接mysql必要插件 全部版本下載:http://hovertree.com/h/bjaf/0sft36s9.htm mysql.data.dll是C#操作MYSQL的驅動文件,是c#連接mysql必要插件,使c#語言更簡潔的操作mysql資料庫。當你的電腦彈 ...



mysql.data.dll下載_c#連接mysql必要插件

全部版本下載:http://hovertree.com/h/bjaf/0sft36s9.htm

mysql.data.dll是C#操作MYSQL的驅動文件,是c#連接mysql必要插件,使c#語言更簡潔的操作mysql資料庫。當你的電腦彈出提示“丟失mysql.data.dll”或“無法找到mysql.data.dll”等錯誤問題,請下載本站為你提供的dll文件,使用它可以幫助用戶解決上述問題。
dll文件修複方法:
1、解壓下載的文件。
2、複製文件“mysql.data.dll”到系統目錄下。
3、系統目錄一般為:C:\WINNT\System32 64位系統為C:\Windows\SysWOW64
4、最後點擊開始菜單-->運行-->輸入regsvr32 mysql.data.dll 後,回車即可解決錯誤提示! 

 

第三方組件:Mysql.Data.dll
說明:下載Mysql.Data.dll,然後在項目中添加該組件的引用,在代碼頁里輸入using Mysql.Data.MysqlClient,我們就可以順利的使用該類庫的函數建立連接了。

以下是幾個常用函數:

複製代碼
 1 #region  建立MySql資料庫連接
 2     /// <summary>
 3     /// 建立資料庫連接.
 4     /// </summary>
 5     /// <returns>返回MySqlConnection對象</returns>
 6     public MySqlConnection getmysqlcon()
 7     {
 8     //http://sosoft.cnblogs.com/
 9         string M_str_sqlcon = "server=localhost;user id=root;password=root;database=abc"; //根據自己的設置
10         MySqlConnection myCon = new MySqlConnection(M_str_sqlcon);
11         return myCon;
12     }
13     #endregion
14 
15     #region  執行MySqlCommand命令
16     /// <summary>
17     /// 執行MySqlCommand
18     /// </summary>
19     /// <param name="M_str_sqlstr">SQL語句</param>
20     public void getmysqlcom(string M_str_sqlstr)
21     {
22         MySqlConnection mysqlcon = this.getmysqlcon();
23         mysqlcon.Open();
24         MySqlCommand mysqlcom = new MySqlCommand(M_str_sqlstr, mysqlcon);
25         mysqlcom.ExecuteNonQuery();
26         mysqlcom.Dispose();
27         mysqlcon.Close();
28         mysqlcon.Dispose();
29     }
30     #endregion
31 
32 #region  創建MySqlDataReader對象
33     /// <summary>
34     /// 創建一個MySqlDataReader對象
35     /// </summary>
36     /// <param name="M_str_sqlstr">SQL語句</param>
37     /// <returns>返回MySqlDataReader對象</returns>
38     public MySqlDataReader getmysqlread(string M_str_sqlstr)
39     {
40         MySqlConnection mysqlcon = this.getmysqlcon();
41         MySqlCommand mysqlcom = new MySqlCommand(M_str_sqlstr, mysqlcon);
42         mysqlcon.Open();
43         MySqlDataReader mysqlread = mysqlcom.ExecuteReader(CommandBehavior.CloseConnection);
44         return mysqlread;
45     }
46     #endregion
複製代碼

 

 

 

 

複製代碼
  1 using System.Data;
  2 
  3 using MySql.Data.MySqlClient;
  4 
  5 
  6 
  7 
  8 
  9 private MySqlConnection conn;
 10 
 11 private DataTable data;
 12 
 13 private MySqlDataAdapter da;
 14 
 15 private MySqlCommandBuilder  cb;
 16 
 17 private DataGrid  dataGrid;
 18 
 19 
 20 
 21 private void connectBtn_Click(object sender, System.EventArgs e)
 22 
 23  {
 24 
 25  if (conn != null)
 26 
 27  conn.Close();
 28 
 29  
 30 
 31  string connStr = String.Format("server={0};user id={1}; password={2}; port={3}; database=mysql; pooling=false; charset=utf8",
 32 
 33  server.Text, userid.Text, password.Text, 3306);
 34 
 35 
 36 
 37  try 
 38 
 39  {
 40 
 41  conn = new MySqlConnection( connStr );
 42 
 43  conn.Open();
 44 
 45 
 46 
 47  GetDatabases();
 48 
 49                 MessageBox.Show("連接資料庫成功!");
 50 
 51  }
 52 
 53  catch (MySqlException ex) 
 54 
 55  {
 56 
 57  MessageBox.Show( "Error connecting to the server: " + ex.Message );
 58 
 59  }
 60 
 61  }
 62 
 63 
 64 
 65  private void GetDatabases() 
 66 
 67  {
 68 
 69  MySqlDataReader reader = null;
 70 
 71  MySqlCommand cmd = new MySqlCommand("SHOW DATABASES", conn);
 72 
 73 
 74 
 75  try 
 76 
 77  {
 78 
 79  reader = cmd.ExecuteReader();
 80 
 81  databaseList.Items.Clear();
 82 
 83  while (reader.Read()) 
 84 
 85  {
 86 
 87  databaseList.Items.Add( reader.GetString(0) );
 88 
 89  }
 90 
 91  }
 92 
 93  catch (MySqlException ex) 
 94 
 95  {
 96 
 97  MessageBox.Show("Failed to populate database list: " + ex.Message );
 98 
 99  }
100 
101  finally 
102 
103  {
104 
105  if (reader != null) reader.Close();
106 
107  }
108 
109  }
110 
111 
112 
113  private void databaseList_SelectedIndexChanged(object sender, System.EventArgs e)
114 
115  {
116 
117  MySqlDataReader reader = null;
118 
119  conn.ChangeDatabase(databaseList.SelectedItem.ToString());
120 
121 //http://sosoft.cnblogs.com/
122 
123  MySqlCommand cmd = new MySqlCommand("SHOW TABLES", conn);
124 
125  try 
126 
127  {
128 
129  reader = cmd.ExecuteReader();
130 
131  tables.Items.Clear();
132 
133  while (reader.Read()) 
134 
135  {
136 
137  tables.Items.Add( reader.GetString(0) );
138 
139  }
140 
141  }
142 
143  catch (MySqlException ex) 
144 
145  {
146 
147  MessageBox.Show("Failed to populate table list: " + ex.Message );
148 
149  }
150 
151  finally 
152 
153  {
154 
155  if (reader != null) reader.Close();
156 
157  }
158 
159  }
160 
161 
162 
163  private void tables_SelectedIndexChanged(object sender, System.EventArgs e)
164 
165  {
166 
167  data = new DataTable();
168 
169  
170 
171  da = new MySqlDataAdapter("SELECT * FROM " + tables.SelectedItem.ToString(), conn );
172 
173      cb = new MySqlCommandBuilder( da ); // 此處必須有,否則無法更新
174 
175 
176 
177  da.Fill( data );
178 
179 
180 
181  dataGrid.DataSource = data;
182 
183  }
184 
185 
186 
187  private void updateBtn_Click(object sender, System.EventArgs e)
188 
189  {
190 
191  DataTable changes = data.GetChanges();
192 
193  da.Update( changes );
194 
195  data.AcceptChanges();
196 
197  }
複製代碼

 http://www.cnblogs.com/sosoft/p/kaifajishu.html


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 近期 yvivid 使用 Python 進行科學計算類應用(如matlab部分應用場景) 比較好的 發行版本為 Anaconda: A free distribution for the SciPy stack. Supports Linux, Windows and Mac. Enthought ...
  • 列印sql語句,直接在你執行SQL語句後輸出 方法一: $queries = DB::getQueryLog(); $a = end($queries); $tmp = str_replace('?', '"'.'%s'.'"', $a["query"]); echo vsprintf($tmp, ...
  • 相信對於很多剛接觸打包程式的同志來說,關於x86,x64,Any CPU這三個項目平臺,以及解決方案配置Debug和Release有什麼區別?這個問題一定有許多的困惑,甚至不乏一些已經工作了很久的老程式猿來說都是一個模棱兩可的問題。當然,我也是搗騰了好久,才漸漸搞明白它們的區別,以此作個總結: 一 ...
  • 網上很多例子,各種套路,就是沒有測試過。 WPF 將DLL嵌入EXE文件的套路是這樣的 1.將要引用的dll源文件添加到wpf 項目中,dll 的屬性-》生成操作為【嵌入的資源】。 2.監聽 AppDomain.CurrentDomain.AssemblyResolve 事件 監聽的事件的位置很重要 ...
  • 根據兩點經緯度計算距離 這些經緯線是怎樣定出來的呢?地球是在不停地繞地軸旋轉(地軸是一根通過地球南北兩極和地球中心的假想線),在地球中腰畫一個與地軸垂直的大圓圈,使圈上的每一點都和南北兩極的距離相等,這個圓圈就叫作“赤道”。在赤道的南北兩邊,畫出許多和赤道平行的圓圈,就是“緯圈”;構成這些圓圈的線段 ...
  • 寫過很多篇非同步,線程,並行的文章了,我覺得有必要總結一下了,然後把目錄整理一下,分享給大家,這麼大家看的時候方便些! 非阻塞 非同步操作無須額外的線程負擔,並且使用回調的方式進行處理,在設計良好的情況下,處理函數可以不必使用共用變數(即使無法完全不用,最起碼可以減少 共用變數的數量),減少了死鎖的可能 ...
  • 保存在記憶體中的session經常由於dll的變動導致丟失。有一種方法可以長期保存session,那就是session的SqlServer模式。 ASP.NET允許將會話數據存儲到一個資料庫伺服器中,方法是將web.config中session配置中的的mode屬性變成SqlServer。 在這種情況 ...
  • 網上.net ORM框架也不少,但是我感覺這個框架配置很簡單的,前幾年貌似用的人很多,現在好像用得比較少了,隨著它官方的升級現在已經到3.0了, 並且採用T4 模板生成的方式,代碼量好像減少了。不過我感覺2.2還是比較穩定,前些天有網友問這個框架怎麼使用,在次讓我整理了一下。廢話就不說了,先看看怎麼 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...