应用程序对数据库的操作都是只有4个:增,删,改,查。

只有”查”的操作需要使用适配器来存储查询得到的数据。其它3个操作不需要用到适配器。

不同的数据库有共同操作方法:都要建立连接对象,连接对象要有连接字符串,连接字符串用来指定数据库的位置。因为数据库可以是在本机(也就是和应用程序在同一台机器上),也可以是局域网中的某台服务器。所以,连接字符串都会有服务器名,用户名,密码,数据库名这几样东西。

数据库也是1个应用程序,也就说C#应用程序读写操作数据库就是2个应用程序之间的访问操作。所以不同的数据库之间的访问操作都不一样。每个数据库都会提供动态链接库.dll来给C#编程使用,在解决方案的“引用”处右键添加引用-》找到从数据库厂家网站上下载得到的.dll文件,你在需要编程的.cs文件的头部就可以使用动态链接库提供的类对象来操作数据库了。

Dll库里面包含多个不同功能的命名空间,命名空间里面有多个类,我只需要使用其中1个命名空间,如下的using MySql.Data.MySqlClient;

这个命名空间有MySqlConnection连接类,MySqlCommand命令类,MySqlDataAdapter适配器类。

using MySql.Data.MySqlClient;//这是MYSQL数据库的命名空间。

有了上面这一句引用,你在程序中就可以使用操作数据库的相关对象了。你统计一下,操作数据库的模式,看下面2个操作。是不是差不多?准备好就open,操作完就close.要准备的东西就2个:连接对象和命令对象。连接上数据库还要操作数据库,所以这2个对象是必备的。增删改都只要2个对象。对于查询,需要3个对象:连接对象,命令对象,适配器对象。适配器对象用来存储查到的内容。

MYSQL数据库的操作:要引用:using MySql.Data.MySqlClient;

增删改查操作都是相同的模式,open----操作----close.  以下的操作都在VS2015中正常使用,可以直接复制使用

MYSQL数据库插入操作:

前2行得到1个完整的对象绝对位置.第一行得到主机数据库.第二行得到数据库中的数据表a

//建立1个mysql连接对象并且直接初始化连接字符串.这样简约

MySqlConnection myConnnect = new MySqlConnection("server=localhost;User Id=root;password=123456;Database=aa");

string SQLSTR = string.Format("insert into A(A,B,C,daytime) values('{0}','{1}','{2}','{3}')", PLCvalue.VD100, PLCvalue.VD104, PLCvalue.VD108, DateTime.Now.ToString());

MySqlCommand mycm = new MySqlCommand(SQLSTR, myConnnect);

myConnnect.Open();

mycm.ExecuteNonQuery();

myConnnect.Close();

//********************************************************

MYSQL数据库查询操作:

//***这段是MYSQL数据库查询的操作*************************  前2行得到1个完整的对象绝对位置.第一行得到主机数据库.第二行得到数据库中的数据表a

//建立1个mysql连接对象并且直接初始化连接字符串.这样简约

MySqlConnection myConnnect = new MySqlConnection("server=localhost;User Id=root;password=123456;Database=aa");

//在屏幕上有2个datetimepicker日期时间输入控件,可以根据输入的2个时间,查询得到2个时间之间的所有数据

string SQL= string.Format("select * from a  where daytime between '{0}' and '{1}'", dateTimePicker1.Value, dateTimePicker2.Value);

DataSet ds = new DataSet();//新建1个数据集

MySqlCommand cmd = new MySqlCommand(SQL, myConnnect);//新建立1个数据库命令对象用来执行你下达的命令,命令就是上面的命令字符串SQL

myConnnect.Open();//打开数据库

MySqlDataAdapter dd = new MySqlDataAdapter(cmd);//只有查询数据库才会用到适配器对象,用来存储上面的命令执行后得到的数据内容.

dd.Fill(ds);//然后把内容填充到数据集对象

myConnnect.Close();//操作完成关闭数据库

//*******************************************************

MYSQL数据库删除操作:

MySqlConnection myConnnect = new MySqlConnection("server=localhost;User Id=root;password=123456;Database=aa");

string sql2 = "delete from a order by daytime limit 10";//会删除最旧的日期时间的10行

string sql2 = "delete from a order by daytime desc limit 10";//会删除最新日期时间的10行,这2行按需要选1行使用

MySqlCommand cmd1 = new MySqlCommand(sql2, myConnnect);

myConnnect.Open();//打开数据库

int k = cmd1.ExecuteNonQuery();//执行动作

MessageBox.Show("已删除" + k.ToString() + "条记录");

myConnnect.Close();//操作完成关闭数据库

(原创)C#操作MYSQL数据库的更多相关文章

  1. PHP操作mysql数据库:[2]查询数据听语音

    本文主要详细讲解如何使用php语言,对mysql数据库进行查询.添加.删除.更新等操作. 工具/原料   Macromedia Dreamweaver 8 mysql数据库,php语言 一.前言   ...

  2. (转)防止人为误操作MySQL数据库技巧一例

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://oldboy.blog.51cto.com/2561410/1321061 防止人 ...

  3. 【MySQL】如何最大程度防止人为误操作MySQL数据库?这次我懂了!!

    写在前面 今天,一位哥们打电话来问我说误操作了他们公司数据库中的数据,如何恢复.他原本的想法是登录数据库update一个记录,结果忘了加where条件,于是悲剧发生了.今天,我们不讲如何恢复误操作的数 ...

  4. PHP操作MySQL数据库5个步骤

    PHP操作MySQL数据库一般可分为5个步骤:1.连接MySQL数据库服务器:2.选择数据库:3.执行SQL语句:4.关闭结果集:5断开与MySQL数据库服务器连接. 1.用mysql_connect ...

  5. python操作mysql数据库的相关操作实例

    python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...

  6. 转 用C API 操作MySQL数据库

    用C API 操作MySQL数据库 参考MYSQL的帮助文档整理 这里归纳了C API可使用的函数,并在下一节详细介绍了它们.请参见25.2.3节,“C API函数描述”. 函数 描述 mysql_a ...

  7. Code First操作Mysql数据库

    前面博客也讲了,自己做一个网站,选用的是MVC+EF Code First+MySql+EasyUI,先说下技术选型.一.为什么选择MVC? 因为之前自己做的系统大部分是webForm,MVC的之前也 ...

  8. JDBC操作MySQL数据库案例

    JDBC操作MySQL数据库案例 import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepared ...

  9. shell脚本操作mysql数据库

    shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改.查)等各种操作 mysql  -hhostname -Pport -uusername -pp ...

  10. Java使用Jdbc操作MySql数据库(一)

    这个示例是Java操作MySql的基本方法. 在这个示例之前,要安装好MySql,并且配置好账户密码,创建一个logininfo数据库,在数据库中创建userinfo数据表.并且在表中添加示例数据. ...

随机推荐

  1. Odoo报表的report标签和报表格式定义

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826329.html 一:Report标签     report标签可用于定义一条报表记录.属性有: 1) ...

  2. python接口自动化17-multipart/form-data表单提交

    前言 multipart/form-data这种格式官方文档给的参考案例比较简单,实际情况中遇到会比较复杂,本篇讲解multipart/form-data的表单如何提交,非图片上传 禅道提交bug 1 ...

  3. JMeter【第四篇】参数化

    概念 参数化的原因,并不是网上说的真实模拟不同用户,真实反应服务器性能,而是: 数据唯一性(比如注册名不能一样) 避免数据库查询缓存 如何避免参数化: 去掉唯一性校验的约束 关闭数据库的查询缓存,my ...

  4. 水晶报表 VS2010 应用

    VS.NET2010水晶报表安装部署[VS2010]   欢迎C#高手加盟QQ群:9340166 水晶报表VS2010版IDE安装标准版SAP Crystal Reports, version for ...

  5. 生成随机文件名JS

    export default function (length) { const data = ["0", "1", "2", " ...

  6. 洛谷p1902刺杀大使题解

    题目传送门 方法:二分答案+dfs 二分一个mid,此次刺杀的最大伤害,作为判断条件来dfs,二分,更新. 我们二分一个答案mid来表示一个界限,如果当前这个格子的伤害代价比mid小则可以走否则就不走 ...

  7. 【字符串】【P5830】 【模板】失配树

    [字符串][P5830] [模板]失配树 Description 给定一个长度为 \(n\) 的字符串 \(S\),有 \(m\) 次询问,每次询问给定 \(S\) 的两个前缀,求它们的最长公共 bo ...

  8. GCD(洛谷 2568)

    题目描述 给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的数对(x,y)有多少对. 输入格式 一个整数N 输出格式 答案 输入输出样例 输入 #1 4 输出 #1 4 说明/提示 ...

  9. 网卡监控脚本--nagios

    #!/usr/bin/python26#filename:check_traffic.py#the python script function  for monitoring network tra ...

  10. concurrent(七)ConcurrentHashMap源码分析

    参考文档:https://www.cnblogs.com/xiaoxi/p/7474026.html https://www.ibm.com/developerworks/cn/java/java-l ...