应用程序对数据库的操作都是只有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. xadmin引入celery4.0执行异步任务与定时任务

    一.安装 pip install celery pip install django-celery-beat pip install django-celery-results pip install ...

  2. 使用istioctl命令查看gateway及virtualservices

    istioctl命令,比kubectl命令,在查看istio资源方面,要方便很多. 如果使用microk8s安装,则命令为microk8s.istioctl了. 查看gateway及virtualse ...

  3. CentOS7配置本地Yum源

    从CentOS7官网下载DVD中存在需要的大部分软件,所以在没有网络的情况下可以配置yum源为本地的DVD,下载速度快,软件稳定.1. 如果使用虚拟机,那么就在虚拟机中挂载DVD的iso文件.2. 使 ...

  4. 02-docker入门-docker常用的一些命令

    在这里,有必要先对ducker在做一次介绍 ducker 是一个容器. 容器内部运行的是一个系统. 系统内部安装好了要调试 / 发布的工程,然后这个系统被打包成了一个镜像. ducker 就是这个镜像 ...

  5. hdu 6217 A BBP Formula 公式题

    题意 已知公式:$\pi=\sum_{k=0}^{\infty}\left[\frac{1}{16^{k}}\left(\frac{4}{8 k+1}-\frac{2}{8 k+4}-\frac{1} ...

  6. 排序算法-基数排序(Java)

    package com.rao.sort; import java.util.*; /** * @author Srao * @className RadioSort * @date 2019/12/ ...

  7. VMWare中CentOS 7 配置 XShell连接

    https://jingyan.baidu.com/article/363872ec796dfc6e4ba16f09.html http://www.cnblogs.com/iskylite/p/76 ...

  8. Pandas | 23 分类数据

    通常实时的数据包括重复的文本列.例如:性别,国家和代码等特征总是重复的.这些是分类数据的例子. 分类变量只能采用有限的数量,而且通常是固定的数量.除了固定长度,分类数据可能有顺序,但不能执行数字操作. ...

  9. 【meet in the mid】【qbxt2019csp刷题班day1C】birthday

    Description 给定一个长度为 \(n\) 序列,值域为 \([1, v]\),每次选择一段区间,要求在这个区间上选择一些元素加入到两个集合中,每个元素要么不选要么只能加入一个集合,要求两个集 ...

  10. mysql数据库去掉字符前/中/后的空格

    近日,业务部门提出给 他们出的报表中有特殊字符,导致其他部门用不了,排查后发现表中该列字段里边有空格导致的,数据总量140w,因数据量较大,暂不考虑直接提sql更新生产数据.近日只考虑下,去除空格的m ...