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#连接mariadb代码及方式的更多相关文章
- spring 5.x 系列第6篇 —— 整合 mybatis + druid 连接池 (代码配置方式)
源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 项目目录结构 1.创建maven工程,除了Spring基本依赖外,还需要导 ...
- 最新的JavaScript核心语言标准——ES6,彻底改变你编写JS代码的方式!【转载+整理】
原文地址 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructu ...
- 32位汇编第三讲,RadAsm,IDE的配置和使用,以及汇编代码注入方式
32位汇编第三讲,RadAsm,IDE的配置和使用,以及汇编代码注入方式 一丶RadAsm的配置和使用 用了怎么长时间的命令行方式,我们发现了几个问题 1.没有代码提醒功能 2.编写代码很慢,记不住各 ...
- web.config中配置数据库(多数据)连接的两种方式
这是我的第一篇文章,既然是第一篇了,那就从最基础的只是说起--web.config中配置数据库连接. 网上有很多这方面的资料,但发现并没有一篇从头到位很清楚明了说完的,今天就把我的整理写在这里吧. 在 ...
- atitit.client连接oracle数据库的方式总结
client连接oracle数据库的方式总结 文件夹 Java程序连接一般使用jar驱动连接.. ... 桌面GUI一般採取c语言驱动oci.dll 直接连接... 间接连接(须要配置tns及其env ...
- 最新的JavaScript核心语言标准——ES6,彻底改变你编写JS代码的方式!
原文地址 迁移到:http://www.bdata-cap.com/newsinfo/1741515.html 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和f ...
- 通过代码的方式完成WCF服务的寄宿工作
使用纯代码的方式进行服务寄宿 服务寄宿的目的是为了开启一个进程,为WCF服务提供一个运行的环境.通过为服务添加一个或者多个终结点,使之暴露给潜在的服务消费,服务消费者通过匹配的终结点对该服务进行调用, ...
- C 语言字符串连接的 3种方式
C 语言字符串连接的 3种方式 #include<stdio.h> #include<stdlib.h> #include<string.h> char *join ...
- 编写css代码的方式
css(层叠样式表) 在一个网页中主要负责了页面的数据样式. 编写css代码的方式: 第一种: 在style标签中编写css代码. 只能用于本页面中,复用性不强 ...
随机推荐
- 支付宝当面付功能demo运行解读
下载java版本的sdk的demo: 然后拷入idea中: 准备工作: (1)验签工具下载:蚂蚁金服上面下载: https://openclub.alipay.com/read.php?tid=955 ...
- (四)关于读文件的结束的判别方法(EOF和feof)以及区别
关于读文件的时候判断文本是否读完的方式一般可以通过EOF,一般宏定义为-1.因为ASCII码中不可能出现-1. 当以文本形式读取文件内容, 读入的字符值等于EOF时, 表示读入的已不是正常的字符而是文 ...
- Java入门:基础算法之检查素数
程序提示用户输入一个数,然后检查所输入的数是否是素数. import java.util.Scanner; class PrimeCheck { public static void main(Str ...
- 百度语音合成 composer
https://packagist.org/packages/jormin/baidu-speech http://ai.baidu.com/docs#/TTS-Online-PHP-SDK/top
- Linux运维五:定时任务crond服务
一.crond简介 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动cro ...
- UIView的alpha属性和hidden属性
alpha 属性为0.0时视图完全透明,为1.0时视图完全不透明. hidden属性为YES时视图隐藏,否则不隐藏. 注意事项: 1 当视图完全透明或者隐藏时,不能响应触摸消息. 也就是alpha等于 ...
- Java并发编程原理与实战十二:深入理解volatile原理与使用
volatile:称之为轻量级锁,被volatile修饰的变量,在线程之间是可见的. 可见:一个线程修改了这个变量的值,在另一个线程中能够读取到这个修改后的值. synchronized除了线程之间互 ...
- windows设置代理.bat 脚本
按照下列脚本复制到记事本中,保存,重命名后缀为.bat,使用时双击即可. 设置代理.bat,修改下列脚本中的代理地址和端口号 @echo off echo 开始设置IE代理上网 reg add &qu ...
- 如何开启一个Django项目
一:新建的Django工程 新建了一个Django工程后,工程会自动创建有两个templates文件夹和unitled文件夹,再加上一个manage.py文件. 二:Django开发的一般流程 在工程 ...
- python 面试题4
Python面试题 基础篇 分类: Python2014-08-08 13:15 2071人阅读 评论(0) 收藏 举报 最近,整理了一些python常见的面试题目,语言是一种工具,但是多角度的了解工 ...