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代码. 只能用于本页面中,复用性不强 ...
随机推荐
- poj 3415 后缀数组 两个字符串中长度不小于 k 的公共子串的个数
Common Substrings Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 11469 Accepted: 379 ...
- IOS使用mkdir创建目录
在IOS真机上可以创建目录的位置只有两个Documents和Caches,如果直接在NSHomeDirectory()上创建目录,会失败,返回的errno含义为操作被禁止. 获取Caches中的一个目 ...
- jar包读取包内properties文件
properties位于src目录下 project --src -----package -----test.properties Properties p = new Properties(); ...
- Nginx模块Lua-Nginx-Module学习笔记(二)Lua指令详解(Directives)
源码地址:https://github.com/Tinywan/Lua-Nginx-Redis Nginx与Lua编写脚本的基本构建块是指令. 指令用于指定何时运行用户Lua代码以及如何使用结果. 下 ...
- Windows下配置Nginx+php7
第一部分:准备工作 第二部分:安装nginx 第三部分:安装php(这里主要讲nginx配置启动php,以cgi运行php)nginx配置文件是conf文件夹里的nginx.conf 在这里,我简单说 ...
- 谈谈Flash图表中数据的采集
一般来说flash中的数据是不能被现有技术很容易采集到的,但是也不能谈flash色变,要具体问题具体分析,有些flash是可以通过一些分析发现背后的数据.然后采集就变得很容易了. 具体案例:搜房房价走 ...
- 《C语言程序设计基础I》秋季学习总结
希望下学期比这学期轻松,学习能力上升,只是越发丰富. 一步一步的走踏实了
- 【leetcode 简单】 第七十题 有效的字母异位词
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram" ...
- (转载) 天梯赛 L2-018. 多项式A除以B
题目链接 题目描述 这仍然是一道关于A/B的题,只不过A和B都换成了多项式.你需要计算两个多项式相除的商Q和余R,其中R的阶数必须小于B的阶数. 输入格式: 输入分两行,每行给出一个非零多项式,先给出 ...
- Linux Shell管道调用用户定义函数(使shell支持map函数式特性)
Linux中有一个管道的概念,常用来流式的处理文本内容,比如一个文件对其中的每一行应用好几个操作,出于两个方面的考虑可能需要在管道中使用用户定义函数: 1. 刚需: 内置的sed/awk之类的可能没法 ...