C#连接mariadb(MYSQL分支)代码示例分享
发布时间:2024-01-14 01:09:33
标签:mariadb,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");
}


猜你喜欢
- MYSQL介绍MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行
- 本篇博客参考Keqi Zhang的文章“A Progressive Morphological Filter for Removing No
- 控制字符控制字符(Control Character),或者说非打印字符,出现于特定的信息文本中,表示某一控制功能的字符,如控制符:LF(换
- 字符x字符 x\\反斜线字符\0n带有八进制值 0 的字符 n (0 <=
- 1. 介绍 SQLite 是一个开源的嵌入式关系数据库,实现自包容、零配置、支持事务的SQL数据库引擎。 其特点是高度便携、使用方便、结构紧
- python logging模块主要是python提供的通用日志系统,使用的方法其实挺简单的,这块就不多介绍。下面主要会讲到在使用pytho
- degrees()方法从弧度转换到度角x语法以下是degrees()方法的语法:degrees(x)注意:此函数是无法直接访问的
- python openvc 裁剪图片下面是4个坐标代码:import cv2#裁剪图片路径input_path,四个裁剪坐标为:y1,y2,
- Session每台电脑访问服务器,都有独立的session,key值都一样,内容不一样。1.session保存在服务器上。2.session
- 部署 Jenkins请提前在 Linux 上安装 Docker,在 Linux 中,我们使用 Docker 启动 Jenkins,这样可以避
- 我们经常会发现网页中的许多数据并不是写死在HTML中的,而是通过js动态载入的。所以也就引出了什么是动态数据的概念,动态数据在这里指的是网页
- 毫无疑问,JavaScript 是一种非常灵活的脚本语言,有时候它像一只难以驯服的野马——你受益于它的灵活性的同时,也要时刻提防它变得失去控
- 你可以输入'脚本'查查看 查找页面中的字符 <script language="JavaScript&quo
- 首先,把项目上传到虚拟机中。scp -r C:\Users\Administrator\Desktop\fresh root@192.168
- 在 JavaScript 中,使用字符串连接有 几 种方式:连接符(+)、反引号(`)、join()、concat()。一、使用连接符 &a
- 在VBScript中有Filter这个函数可以用来对数组进行过滤,并返回原数组的一个子集数组。语法说明: 引用内容Filter 函
- 1:定义存储过程,用于分隔字符串DELIMITER $$USE `mess`$$DROP PROCEDURE IF EXISTS `spli
- 如果直接对大文件对象调用 read() 方法,会导致不可预测的内存占用。好的方法是利用固定长度的缓冲区来不断读取文件内容。即通过yield。
- 有时候我们需要在某段字符串或者某段语句中去查找确认是否包含我们所需要的字符串信息,举例子说、某段变量是:A= ”My name is Cla
- 不想每次都要去查execl,想更方便点,更快一点。通俗点思路:点击exe,Python 自动监控剪贴板的内容,然后正则取出IP,接着根据IP