应用程序对数据库的操作都是只有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. Linux虚拟机修改ip地址,查看网关,网络环境配置

    修改虚拟机的ip地址: 进入如下界面,直接修改子网ip即可. 查看网关: Linux网络环境配置: 第一种方式(自动获取): 说明:登陆后,通过界面来设置自动获取ip 我们先进入设置: 把自动连接勾上 ...

  2. linux部署docker镜像

    安装git yum install git 生成ssh秘钥 cat ~/.ssh/id_rsa.pub //查看是否有秘钥 ssh-keygen -t rsa -C "" //生成 ...

  3. 第一部分day2-for、while、数据类型(字符串、列表、元组)

    数据类型 数据类型的初识 1.数字 整数 int (integer) 整型 (注:python3 不区分整型和长整型,统一称之为整型) 长整型 float(浮点型) complex(复数) 是由实数和 ...

  4. MySQL服务启动时显示本地计算机上的MySQL服务启动后停止。某些服务在。。。

    之前一直用的好端端的,这次启动服务突然就报了这错误. 更好的阅读体验可访问 这里. 起因 为了使用 LOAD_FILE 函数,在数据库配置文件 my.ini的 [mysqld] 里添加 secure_ ...

  5. Python+OpenCV4:读写输入和输出的简单实践(图片、视频、摄像头)

    典型的文件处理流程如下: 利用命令行参数 sys.argv 命令行参数是读取文件时常用的方式. 命令行参数保存在 sys.argv 的列表中,列表的第一个元素是脚本名称,后面的元素是命令行参数: 通过 ...

  6. 在liuunex下部署 springBoot项目

    1.新建springBoot项目. 2.打包生成jar 3.丢到liunex丢到(/usr/local/software) 4.检查进程,ps -ef|grep java (java代表所有的java ...

  7. mybatis框架-resultMap的自动映射级别-partial 和full的探讨

    现在我们做一个小实验,输出一下上一个案例中没有匹配的属性,注意哦,现在user类中是有内部嵌套的复杂数据类型的 运行结果: 注意到:现在居然连userPassword都打印不出来了,原因就是user类 ...

  8. LeetCode 1216. Valid Palindrome III

    原题链接在这里:https://leetcode.com/problems/valid-palindrome-iii/ 题目: Given a string s and an integer k, f ...

  9. zzulioj - 2599: 对称的数字

    题目链接: http://acm.zzuli.edu.cn/problem.php?id=2599 题目描述 小D同学发现了一些数字与其反转数字相加求和得出新数字,新数字再不断重复这个过程,最终可能得 ...

  10. Flask 中的模板语言 Jinja2 及 render_template 的深度用法

    是时候开始写个前端了,Flask中默认的模板语言是Jinja2 现在我们来一步一步的学习一下 Jinja2 捎带手把 render_template 中留下的疑问解决一下 首先我们要在后端定义几个字符 ...