• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL Connector/Net 的简略使用

mysql 搞代码 7年前 (2018-06-06) 197次浏览 已收录 0个评论

mysql Connector/Net 的简单使用

        首先,新建工程(Windows Application)

MySQL Connector/Net 的简略使用

        然后,增加引用(MySql.Data)

MySQL Connector/Net 的简略使用

MySQL Connector/Net 的简略使用

注意:根据使用.net版本的不同而选择MySql.Data版本

        之后,放置控件

        3个TextBox,2个ComboBox, 1个DataGridView等等

MySQL Connector/Net 的简略使用

 MySQL Connector/Net 的简略使用

密码框设置

MySQL Connector/Net 的简略使用

下拉框设置

MySQL Connector/Net 的简略使用

数据格设置

        连接按钮代码:

            string connStr = string.Format("server={0};user id={1}; password={2}; database=mysql; pooling=false",                 edtSrv.Text, edtUser.Text, edtPwd.Text);             try             {                 conn = new MySqlConnection(connStr);                 conn.Open();                  // 获得数据库列表                 List<string> cmd = new List<string>();                 cmd.Add("SHOW DATABASES");                 List<string> list = getDataList(cmd);                  // 清空下拉框                 cBoxDBs.Items.Clear();                 // 增加下拉框列表                 foreach (string str in list)                     cBoxDBs.Items.Add(str);                              }             catch(MySqlException ex)             {                 MessageBox.Show("没有找到数据库: " + ex.Message);             }

欢迎大家阅读《MySQL Connector/Net 的简略使用》,跪求各位点评,by 搞代码

       下拉框(数据库列表)

            // 获得数据库列表             List<string> cmdList = new List<string>();             cmdList.Add("USE " + cBoxDBs.SelectedItem.ToString());             cmdList.Add("SHOW TABLES");             List<string> list = getDataList(cmdList);              // 清空下拉框             cBoxTables.Items.Clear();             // 增加下拉框列表             foreach (string str in list)                 cBoxTables.Items.Add(str);

        下拉框(数据表列表)

            // 获得数据表名称             string tableName = cBoxTables.SelectedItem.ToString();             // 设置数据桥             dataAdapter = new MySqlDataAdapter("Select * from " + tableName, conn);              // DataSet             sqlCmdBuilder = new MySqlCommandBuilder(dataAdapter);             // 建立数据表             table = new DataTable(tableName);             // 填充数据表到数据桥             dataAdapter.Fill(table);              // 指定数据源             dataGridView1.DataSource = table;

        运行效果:

MySQL Connector/Net 的简略使用

操作步骤(1、2、3)

        开发环境: VS2005

        连接器(For .net):V6.8.3

        Form1.cs

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using MySql.Data.MySqlClient;  namespace testMySQL {     public partial class frmain : Form     {         private MySqlConnection conn;         private DataTable table;         private MySqlDataAdapter dataAdapter;         private MySqlCommandBuilder sqlCmdBuilder;          public frmain()         {             InitializeComponent();         }          private void btnConn_Click(object sender, EventArgs e)         {             //             string connStr = string.Format(                 "server={0}; user id={1}; password={2}; database=mysql; pooling=false",                 edtSrv.Text, edtUser.Text, edtPwd.Text);             try             {                 conn = new MySqlConnection(connStr);                 conn.Open();                  // 获得数据库列表                 List<string> cmd = new List<string>();                 cmd.Add("SHOW DATABASES");                 List<string> list = getDataList(cmd);                  // 清空下拉框                 cBoxDBs.Items.Clear();                 // 增加下拉框列表                 foreach (string str in list)                     cBoxDBs.Items.Add(str);                              }             catch(MySqlException ex)             {                 MessageBox.Show("没有找到数据库: " + ex.Message);             }                  }          private List<string> getDataList(List<string> cmdList)         {             List<string> result = new List<string>();              // SQL数据读取器             MySqlDataReader dataReader = null;              // SQL命令执行器             MySqlCommand sqlCmd = new MySqlCommand();              // 设置SQL命令执行器的连接             sqlCmd.Connection = conn;              try             {                 // 执行的SQL命令                 foreach (string cmd in cmdList)                 {                     sqlCmd.CommandText = cmd;                     sqlCmd.ExecuteNonQuery();                 }                 //                    dataReader = sqlCmd.ExecuteReader();                  while(dataReader.Read())                 {                     string strDbName = dataReader.GetString(0);                      result.Add(strDbName);                 }             }             catch (MySqlException ex)             {                 MessageBox.Show("读取数据失败: " + ex.Message);             }             finally             {                 if (dataReader != null)                      dataReader.Close();             }             return result;         }          private void cBoxDBs_SelectedIndexChanged(object sender, EventArgs e)         {             // 获得数据库列表             List<string> cmdList = new List<string>();             cmdList.Add("USE " + cBoxDBs.SelectedItem.ToString());             cmdList.Add("SHOW TABLES");             List<string> list = getDataList(cmdList);              // 清空数据库列表             cBoxTables.Items.Clear();             // 增加下拉框列表             foreach (string str in list)                 cBoxTables.Items.Add(str);         }          private void cBoxTables_SelectedIndexChanged(object sender, EventArgs e)         {             // 获得数据表名称             string tableName = cBoxTables.SelectedItem.ToString();             // 设置数据桥             dataAdapter = new MySqlDataAdapter("Select * from " + tableName, conn);              // DataSet             sqlCmdBuilder = new MySqlCommandBuilder(dataAdapter);             // 建立数据表             table = new DataTable(tableName);             // 填充数据表到数据桥             dataAdapter.Fill(table);              // 指定数据源             dataGridView1.DataSource = table;         }     } } 

FAQ:

                 1. Unable to convert MySQL date/time value to System.DateTime

                     出现原因:

                             DateTime列含有“0000-00-00”(YYYY-mm-dd)或者“0000-00-00 00:00:00”(YYYY-mm-dd HH:mm:ss)数据

                     解决办法:

                             在连接串格式中增加“Convert Zero Datetime=True”

server={0}; user id={1}; password={2}; database=mysql; pooling=false; Convert Zero Datetime=True


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MySQL Connector/Net 的简略使用

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址