• C#连接mariadb代码及方式


    不负责任的说MariaDb和MySQL很多都是通用的,因为来自同一个爹。。。

    和MySQL连接方式差不多

    首先配置好你的MariaDb,创建test数据库,在test里创建MyTable表,脚本如下(通过HeidiSQL导出的脚本):

    -- --------------------------------------------------------
    -- 主机:                           172.16.40.153
    -- 服务器版本:                        5.5.5-10.0.4-MariaDB-1~wheezy-log - mariadb.org binary distribution
    -- 服务器操作系统:                      debian-linux-gnu
    -- HeidiSQL 版本:                  8.1.0.4545
    -- --------------------------------------------------------
    
    /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
    /*!40101 SET NAMES utf8 */;
    /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
    /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
    
    -- 导出 test 的数据库结构
    DROP DATABASE IF EXISTS `test`;
    CREATE DATABASE IF NOT EXISTS `test` /*!40100 DEFAULT CHARACTER SET latin1 */;
    USE `test`;
    
    
    -- 导出  表 test.MyTable 结构
    DROP TABLE IF EXISTS `MyTable`;
    CREATE TABLE IF NOT EXISTS `MyTable` (
      `id` int(11) NOT NULL,
      `username` varchar(32) DEFAULT NULL,
      `password` varchar(32) DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    
    -- 正在导出表  test.MyTable 的数据:~0 rows (大约)
    DELETE FROM `MyTable`;
    /*!40000 ALTER TABLE `MyTable` DISABLE KEYS */;
    INSERT INTO `MyTable` (`id`, `username`, `password`) VALUES
    	(1, '2013/10/13', '1f11082e-7c23-4ffd-bfd2-67b0a58d'),
    	(25, '2013/10/13', 'fc52bd01-474b-4fa4-86f1-18d3a3c7'),
    	(32, '2013/10/13', '1078f559-3e39-4b7d-bcab-0286c7f4'),
    	(58, '2013/10/13', '95ee6ce5-fcef-4785-bd0d-3482e6de');
    /*!40000 ALTER TABLE `MyTable` ENABLE KEYS */;
    /*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */;
    /*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */;
    /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
    

     C#代码如下:包含了简单的新增删除查询,工具是vs2012版本,一定要下载mysql-connector-net,我选择的是最新的版本

    别忘了添加引用

    using MySql.Data.MySqlClient;
    
    MySqlConnection connection_;
            private void buttonOpenConnect_Click(object sender, EventArgs e)
            {
                //string connectionStr = "server=127.0.0.1;user id=root;password=;database=test";
                string connectionStr = "server=172.16.40.153;user id=root;password=123456;database=test";
                connection_ = new MySqlConnection(connectionStr);
                connection_.Open();
                MessageBox.Show("Connect OK!");
            }
    
            private void buttonSelect_Click(object sender, EventArgs e)
            {
                if (connection_ == null)
                {
                    MessageBox.Show("Please open connect!");
                    return;
                }
                string sql = "SELECT * FROM MyTable";
                MySqlDataAdapter adapter = new MySqlDataAdapter(sql, connection_);
                DataTable dataTable = new DataTable();
                adapter.Fill(dataTable);
                dataGridViewMariaDB.DataSource = dataTable;
            }
    
            private void buttonCloseConnect_Click(object sender, EventArgs e)
            {
                if (connection_ != null)
                {
                    connection_.Close();
                    MessageBox.Show("Connect Close!");
                }
            }
    
            private void buttonInsert_Click(object sender, EventArgs e)
            {
                if (connection_ == null)
                {
                    MessageBox.Show("Please open connect!");
                    return;
                }
                int id = DateTime.Now.Second;
                string username = DateTime.Now.ToShortDateString();
                string password = Guid.NewGuid().ToString();
                string sql = string.Format("INSERT INTO MyTable (`id`,`username`,`password`) VALUES({0},'{1}','{2}');", id, username, password);
                MySqlCommand command = new MySqlCommand(sql, connection_);
                int affectLines = command.ExecuteNonQuery();
    
                MessageBox.Show("Affect " + affectLines.ToString() + " line");
    
            }
    
            private void buttonDelete_Click(object sender, EventArgs e)
            {
                if (connection_ == null)
                {
                    MessageBox.Show("Please open connect!");
                    return;
                }
                int no = Convert.ToInt32(textBoxNO.Text);
                string sql = string.Format("DELETE FROM MyTable WHERE id={0}", no);
                MySqlCommand command = new MySqlCommand(sql, connection_);
                int affectLines = command.ExecuteNonQuery();
    
                MessageBox.Show("Affect " + affectLines.ToString() + " line");
    
            }
    

    源代码下载

  • 相关阅读:
    排序算法:冒泡和快排 摘自网络
    C语言内存讲解
    查找算法:折半查找
    SQL 相关知识
    位运算 C++
    设计模式学习3 观察者模式
    实验四——多分支结构及本章总结
    作业3for语句及分支结构elseif
    作业心得
    第二次作业及总结数据类型和运算符
  • 原文地址:https://www.cnblogs.com/24la/p/cSharp-connect-mariadb.html
Copyright © 2020-2023  润新知