zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

C#连接mariadb(MYSQL分支)代码示例分享

mysqlc#连接代码 示例 分支 分享 MariaDB
2023-06-13 09:15:13 时间

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

复制代码代码如下:


----------------------------------------------------------
--主机:                          172.16.40.153
--服务器版本:                       5.5.5-10.0.4-MariaDB-1~wheezy-log-mariadb.orgbinarydistribution
--服务器操作系统:                     debian-linux-gnu
--HeidiSQL版本:                 8.1.0.4545
----------------------------------------------------------

/*!40101SET@OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT*/;
/*!40101SETNAMESutf8*/;
/*!40014SET@OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,FOREIGN_KEY_CHECKS=0*/;
/*!40101SET@OLD_SQL_MODE=@@SQL_MODE,SQL_MODE="NO_AUTO_VALUE_ON_ZERO"*/;

--导出test的数据库结构
DROPDATABASEIFEXISTS`test`;
CREATEDATABASEIFNOTEXISTS`test`/*!40100DEFAULTCHARACTERSETlatin1*/;
USE`test`;

 
--导出 表test.MyTable结构
DROPTABLEIFEXISTS`MyTable`;
CREATETABLEIFNOTEXISTS`MyTable`(
  `id`int(11)NOTNULL,
  `username`varchar(32)DEFAULTNULL,
  `password`varchar(32)DEFAULTNULL,
  PRIMARYKEY(`id`)
)ENGINE=InnoDBDEFAULTCHARSET=latin1;

--正在导出表 test.MyTable的数据:~0rows(大约)
DELETEFROM`MyTable`;
/*!40000ALTERTABLE`MyTable`DISABLEKEYS*/;
INSERTINTO`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");
/*!40000ALTERTABLE`MyTable`ENABLEKEYS*/;
/*!40101SETSQL_MODE=IFNULL(@OLD_SQL_MODE,"")*/;
/*!40014SETFOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKSISNULL,1,@OLD_FOREIGN_KEY_CHECKS)*/;
/*!40101SETCHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT*/;

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

别忘了添加引用

复制代码代码如下:


usingMySql.Data.MySqlClient;

复制代码代码如下:
MySqlConnectionconnection_;
        privatevoidbuttonOpenConnect_Click(objectsender,EventArgse)
        {
            //stringconnectionStr="server=127.0.0.1;userid=root;password=;database=test";
            stringconnectionStr="server=172.16.40.153;userid=root;password=123456;database=test";
            connection_=newMySqlConnection(connectionStr);
            connection_.Open();
            MessageBox.Show("ConnectOK!");
        }

        privatevoidbuttonSelect_Click(objectsender,EventArgse)
        {
            if(connection_==null)
            {
                MessageBox.Show("Pleaseopenconnect!");
                return;
            }
            stringsql="SELECT*FROMMyTable";
            MySqlDataAdapteradapter=newMySqlDataAdapter(sql,connection_);
            DataTabledataTable=newDataTable();
            adapter.Fill(dataTable);
            dataGridViewMariaDB.DataSource=dataTable;
        }

        privatevoidbuttonCloseConnect_Click(objectsender,EventArgse)
        {
            if(connection_!=null)
            {
                connection_.Close();
                MessageBox.Show("ConnectClose!");
            }
        }

        privatevoidbuttonInsert_Click(objectsender,EventArgse)
        {
            if(connection_==null)
            {
                MessageBox.Show("Pleaseopenconnect!");
                return;
            }
            intid=DateTime.Now.Second;
            stringusername=DateTime.Now.ToShortDateString();
            stringpassword=Guid.NewGuid().ToString();
            stringsql=string.Format("INSERTINTOMyTable(`id`,`username`,`password`)VALUES({0},"{1}","{2}");",id,username,password);
            MySqlCommandcommand=newMySqlCommand(sql,connection_);
            intaffectLines=command.ExecuteNonQuery();

            MessageBox.Show("Affect"+affectLines.ToString()+"line");

        }

        privatevoidbuttonDelete_Click(objectsender,EventArgse)
        {
            if(connection_==null)
            {
                MessageBox.Show("Pleaseopenconnect!");
                return;
            }
            intno=Convert.ToInt32(textBoxNO.Text);
            stringsql=string.Format("DELETEFROMMyTableWHEREid={0}",no);
            MySqlCommandcommand=newMySqlCommand(sql,connection_);
            intaffectLines=command.ExecuteNonQuery();

            MessageBox.Show("Affect"+affectLines.ToString()+"line");

        }