c# mysql 操作_c#对mysql数据库的基本操作
1 数据库的创建
打开已经安装好的数据库,如下流程:
step 1:单击 “MySQL Command Line Client-Unicode”
step 2:输入密码,进入数据库
step 3:建立一个简单的数据库,在这里建立一个名称为“mysql_test”的数据库,如下所示:
不过注意此时的数据库里面还没有任何东西。
step 4:在数据库创建一个数据表,如下所示:
use mysql_test;
create table student(
id int not null auto_increment,
StuName varchar(5) not null,
StoNo varchar(14) not null,
Age varchar(3) not null,
primary id
)engine = InnoDB default charset utf=8;
describe student;
insert into student(StuName,StoNo,Age)
values
('张三',3120150802200,18),
('李四',3120150802201,18),
('王麻子',3120150802202,18),
('百度',3120150802203,19),
('阿里',3120150802204,19),
('腾讯',3120150802205,20);
select * from student;
2 连接数据库
使用的是“窗体控件” 来实现连接数据库
step 1:新建一个“窗体控件”项目,从工具箱拖进“button ”公共控件
step 2:在解决方案资源管理器一栏,找到引用,并添加引用“MySql.Data.dll ”
step 3:双击控件,进入程序设计,添加:using MySql.Data.MySqlClient;
step 4:加接代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace mysql_connect
{
public partial class UserControl1: UserControl
{
public UserControl1()
{
InitializeComponent();
}
static string conStr = "server=localhost;port=3306;user=root;password=******; database=mysql_test;";//password 输入你所建立数据库的密码
private void Mysql_connect_Click(object sender, EventArgs e)
{
MySqlConnection connect = new MySqlConnection(conStr);
try
{
connect.Open();//建立连接,可能出现异常,使用try catch语句 MessageBox.Show("恭喜,已经建立连接!");
}
catch (MySqlException exe)
{
MessageBox.Show(exe.Message);//有错则报出错误 }
finally
{
connect.Close();//关闭通道 }
}
}
}
3 数据操作
数据库连接成功之后,就可以使用SQL语句对数据库进行命令操作了。command类提供了几个可执行的命令,下面分别介绍。
流程如下:
第一,使用SqlConnection对象连接数据库;
第二,建立SqlCommand对象,负责SQL语句的执行和存储过程的调用;
第三,对SQL或存储过程执行后返回的“结果”进行操作。
3.1 ExecuteNonQuery(): 执行一个命令,但不返回任何结果,就是执行非查询语句,如:Update:更新;Insert:插入;Delete:删除。
//Update更新代码
string SqlString = "Update ff "
+" Set username='李四',password='20191001'"
+" where id='2'";//SQL语句
MySqlCommand cmd = new MySqlCommand(SqlString,connect);//建立数据库命令,确定sql数据操作语句,和数据库连接。
int ret = cmd.ExecuteNonQuery();//执行SQL语句
MessageBox.Show("执行成功,影响了"+ ret.ToString() + "条数据!");
3.2 ExecuteReader():执行一个命令,返回一个类型化的IDataReader;执行查询语句的命令,也就是select语句。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace mysql_read1
{
public partial class UserControl1: UserControl
{
public UserControl1()
{
InitializeComponent();
}
static string conStr = "server=localhost;port=3306;user=root;password=11xxjlw520; database=mysql_test;";//password 输入你所建立数据库的密码 private void Button1_Click(object sender, EventArgs e)
{
MySqlConnection connect = new MySqlConnection(conStr);
try
{
connect.Open();//建立连接,可能出现异常,使用try catch语句 string SqlStr = "select StuName,StuNo,Age from student where StuNo='3120150802202'";
MySqlCommand cmd = new MySqlCommand(SqlStr, connect);
MySqlDataReader DataReader = cmd.ExecuteReader();
while (DataReader.Read())
{
Console.WriteLine(DataReader.GetString("StuName") + "\t" + DataReader.GetString("StuNo") + "\t"
+ "\t" + DataReader.GetString("Age"));//"userid"是数据库对应的列名,推荐这种方式 }
}
catch (MySqlException exe)
{
MessageBox.Show(exe.Message);//有错则报出错误 }
finally
{
connect.Close();//关闭通道 }
}
}
}
3.3 ExecuteScalar:执行一个命令,返回一个值。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace mysql
{
public partial class UserControl1: UserControl
{
public UserControl1()
{
InitializeComponent();
}
static string conStr = "server=localhost;port=3306;user=root;password=11xxjlw520; database=mysql_test;";//password 输入你所建立数据库的密码
private void Button1_Click(object sender, EventArgs e)
{
MySqlConnection connect = new MySqlConnection(conStr);
try
{
connect.Open();//建立连接,可能出现异常,使用try catch语句
string SqlStr = "select now()";
MySqlCommand cmd = new MySqlCommand(SqlStr, connect);
object Ret = cmd.ExecuteScalar();
MessageBox.Show("数据库服务器当前系统时间是:"+Ret.ToString());
}
catch (MySqlException exe)
{
MessageBox.Show(exe.Message);//有错则报出错误
}
finally
{
connect.Close();//关闭通道
}
}
}
}
4.数据绑定:将我们需要的数据与显示的控件联系在一起。下面将实现使用DataGridView控件来显示连接数据源的详细数据。
step 1:创建Windows窗体程序
step 2:建立和数据库mysql_test的连接(向导法和程序法)
c# mysql 操作_c#对mysql数据库的基本操作相关推荐
- c++向mysql通信_C++连接MySQL
C++连接mysql有2种方法:利用ADO连接.利用mysql自己的api函数进行连接,下面看看如何用吧. 第一种方法可以实现我当前的需求,通过连接不同的字符串来连接不同的数据库.暂时只连接了mysq ...
- python mysql操作_Python的MySQL操作
Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式操作各数据库. Python DB-API使用流程: 引入API模块. 获取与数据库的连接. 执行SQL ...
- c winform mysql类_C#连接MySQL数据库操作类
首先需要安装MySQL Connector Net 6.8.3 然后在项目中引用MySQL Connector,如下图所示 C#连接MySQL的操作类代码如下:public class MySQLHe ...
- 引入mysql+命名空间_C#连接MySQL操作详细教程
C#如何连接MySQL进行操作,供大家参考,具体内容如下 1.引入MySql.Data.dll 例如小编是vs2017,创建工程之后,添加应用,选择工程,点击下面的引用,右击打开,选择添加引用 2.如 ...
- c++ mysql 操作_c++操作mysql入门详解
首先,根据你当前的操作系统,还有开发工具,选择相应的mysql版本.本人选择的环境是win10 + vs2013 需要解决三个问题:1.下载安装mysql服务器,并登录mysql测试一下是否安装成功: ...
- quartz mysql 操作_Quartz 定时任务使用 —— 数据库各表字段的含义(十五)
Quartz持久化数据库各表字段的含义 Quartz持久化到数据库中各表字段详解(以MYSQL数据库为例) QRTZ_BLOB_TRIGGERS:自定义触发器 Trigger 作为 Blob 类型存储 ...
- .net mysql操作类_ASP.NET数据库操作类实例
本文实例讲述了ASP.NET数据库操作类.分享给大家供大家参考,具体如下: using System; using System.Data; using System.Configuration; u ...
- ci mysql操作_CI中的数据库操作
转载于:http://blog.sina.com.cn/s/blog_76e7bdba01016p2p.html CI中第一次连接数据库,在控制器或模型的构造函数里输入以下语句 $this->l ...
- c#打包mysql配置文件_C#打包SQL数据库部署安装(转)
参考<ASP.NET与SQL一起打包部署安装>,这篇文章是针对VB.NET与SQL 一起打包的,但是我使用的是C#,当然只要修改一下主要安装类库就行了!C#的类库代码如下:DBCustom ...
最新文章
- HDU2675(二分算法)
- 使用vagrant基于官方的box制作自己的基础box
- APUE读书笔记-09进程关系(04)
- [xsy2880]取石子游戏
- 5. Leetcode 15. 三数之和 (数组-双向双指针)
- oracle删除一个用户
- 商海致富独家秘诀:微笑可以当钱花
- jdbc mysql demo_JDBC_demo:java连接mysql过程
- Java架构师除了必备的技术之外,这些技能也需必备?你们觉得呢?
- Python MySQL选择
- 【廖雪峰官方网站/Java教程】泛型
- swfupload 实例 php,SWFUpload在PHP中使用实例教程
- 手工测试人员如何转测试开发?
- ps快捷键-csdn
- Excel实战之单元格合并与拆分
- 3D人体骨架检测(mediapipe)
- android system权限 工具,APK程序获取system权限的方法
- 为什么公务员需要考MPA?
- 714.买卖股票含手续费
- 怎么保护PDF的文字不被复制?
热门文章
- 为什么定义!doctype html表格高度变高,!DOCTYPE html声明下div高度100%的问题解决方法...
- Redis内存回收策略
- Java中锁的使用和实现
- Office 安装MathType7.4 未找到MathPage.wll等问题
- python基础(12)之匿名函数lambda
- python2与python3,Python2和Python3的10大区别
- 自主可控的安全关键领域国产工业软件SkyEye
- opencv1-加载、修改、保存图像
- Python可视化库matplotlib(基础整理)
- Part5 数据的共享与保护 5.4类的友元5.5共享数据的保护