MySql数据库 - 5.用C#连接数据库
- 添加 dll 引用,dll 位置:C:\Program Files (x86)\MySQL\Connector NET 8.0\Assemblies\v4.5.2
- 引入命名空间:MySql.Data.MySqlClient
- 编写连接字符串,连接字符串内容包括:
数据库名(database);ip 地址(datasource/data source);端口号(port);用户名(userid/user);密码(password/pwd) - 创建一个用于动态链接的 MySqlConnection 变量
- 调用Open方法打开数据库连接
- 编写 增、删、改、查 语句
a. 创建SQL语句
b. 执行SQL语句 - 调用Close方法关闭数据库连接
示例代码:
using System;
using MySql.Data.MySqlClient; namespace MYSQL数据库操作
{
class Program
{
static void Main(string[] args)
{
// 连接字符串(该字符串不区分大小写):数据库名(database),ip地址(datasource/data source),端口号(port),用户名(userid/user),密码(password/pwd)
string connStr =
"database = test007;" +
"datasource = 127.0.0.1;" +
"port = 3306;" +
"userid =root;" +
"password=root";
// 用于动态链接的对象
// 参数:需要填一个连接字符串
MySqlConnection conn = new MySqlConnection(connStr); // 打开连接
conn.Open(); // 查询
//SelectData(conn);
// 插入数据
//InsertData(conn);
// 删除
//DeleteData(conn);
// 更新数据
UpdateData(conn); conn.Close(); // 关闭时需要遵循 先开后关 的顺序。 Console.ReadKey();
}
// 查询
static void SelectData(MySqlConnection conn)
{
// 创建一个 MySql 对象(创建一个SQL命令)
// 参数:SQL语句,Connector对象
MySqlCommand cmd = new MySqlCommand("select * from user",conn);
// 执行 SQL 命令(返回一个读取流)
MySqlDataReader reader = cmd.ExecuteReader();
// 判断Reader里面是否有数据 reader.HasRows
// 调用 Read方法,表示读取一行记录(返回值:读取到数据返回 true,没有读取到数据返回false)
while (reader.Read())
{
// 获得需要的数据
string username = reader.GetString("username");
string password = reader.GetString("password");
// 打印读取到的数据
Console.WriteLine(username + ":" + password); }
// 关闭读取流,SQL 命令不需要关闭
reader.Close();
// 关闭和数据库的连接
} // 插入
static void InsertData(MySqlConnection conn)
{
// 定义用户名和IMA
string username = "qqq";
string password = "www";
/*
// 字符串组拼的方式插入数据,可能出现 SQL注入的问题
MySqlCommand cmd = new MySqlCommand("insert into user set username = '" + username +
"',password = '" + password + "'",conn);
*/
// 针对以上问题的解决方案
MySqlCommand cmd = new MySqlCommand("insert into user set username = @un, password = @pwd", conn);
cmd.Parameters.AddWithValue("un", username);
cmd.Parameters.AddWithValue("pwd", password); cmd.ExecuteNonQuery();
} // 删除
static void DeleteData(MySqlConnection conn)
{
int id = ;
MySqlCommand cmd = new MySqlCommand("delete from user where id = @id", conn);
cmd.Parameters.AddWithValue("id", id); cmd.ExecuteNonQuery();
} // 更新数据
static void UpdateData(MySqlConnection conn)
{
string password = "";
MySqlCommand cmd = new MySqlCommand("update user set password = @pwd where id = 1",conn);
cmd.Parameters.AddWithValue("pwd", password);
cmd.ExecuteNonQuery();
}
}
}
MySql数据库 - 5.用C#连接数据库的更多相关文章
- 越光后端开发——ygapi(1.新建项目ygapi、新建MySQL数据库yg、项目连接数据库)
1.新建MySQL数据库 show databases;//查看已经有的数据库 create database yg; 2.新建项目ygapi 1.使用pycharm新建django项目取名ygapi ...
- MySQL数据库 -- Navicat、pycharm连接数据库
内容目录 1.Navicat使用 2.pycharm使用数据库 一.Navicat使用 #1. 测试+链接数据库 #2. 新建库 #3. 新建表,新增字段+类型+约束 #4. 设计表:外键 #5. 新 ...
- php将图片以二进制保存到mysql数据库并显示
一.存储图片的数据表结构: -- -- 表的结构 `image` -- CREATE TABLE IF NOT EXISTS `image` ( `id` int(3) NOT NULL AUTO_I ...
- 通过JSP网页连接MySQL数据库,从MySQL数据库中读出一张表并显示在JSP网页中
1.安装所需软件 ①安装java和tomcat,建立JSP网页最基础的软件②安装MySQL数据库(下载地址:https://www.mysql.com/)③安装Navicat Premium来查看数据 ...
- mysql数据库的基本使用命令总结
mysql数据库是一个常用的关系型数据库 关系型数据库核心元素有哪些? 主键:特殊字段,用来唯一标识记录的唯一性 字段:数据列 记录:数据行 数据表:数据行的集合 数据库:数据表的集合 安装.启动.停 ...
- Python数据存储 — MySQL数据库操作
本地安装MySQL 调试环境python3.6,调试python操作mysql数据库,首先要在本地或服务器安装mysql数据库. 安装参考:https://mp.csdn.net/postedit/8 ...
- 【python】python3连接mysql数据库
一.安装pymysql 详见http://www.runoob.com/python3/python3-mysql.html 二.连接mysql数据库 db = pymysql.connect( #连 ...
- 【php】php操作MySQL数据库
一.操作步骤: 1. 连接MySQL数据库并判断是否连接成功2. 选择数据库3. 设置字符集4. 准备SQL语句5. 向MySQL服务发送SQL语句6. 解析处理结果集7. 释放结果集,关闭数据库连接 ...
- (转)PHP连接数据库之PHP连接MYSQL数据库代码
PHP连接数据库之PHP连接MYSQL数据库代码 < ?php $mysql_server_name='localhost'; //改成自己的mysql数据库服务器 $mysql_usernam ...
随机推荐
- Q9400为何难以100%全速运行
采用基于正域的约简. 数据:Ticdata2000 记录数:5822 条件属性:85 结果: 1. Core i7 3632QM 4四核八线程 2.2G 动态加速3.2G 0.516s 2. Core ...
- JQUERY操作JSON数组添加新的属性和值
语法: var data = {}; data["Order"] =order; data["Sort"] = sort; 但是需要注意的是,如果data后面还 ...
- python 线程even
import threading,time import random def door(nums): num=1#电梯在一楼 while True: print("this door is ...
- js数据结构处理--------树结构数据遍历
1.深度遍历 深度遍历利用栈来实现 class Stack { constructor () { this.top = 0, // 栈的长度 this.list = [] } push(item) { ...
- Spring学习记录(一)
1.Spring简介 Spring是一个轻量级的java开发框架.框架的主要优势之一就是分层架构,Spring使用基本的JavaBean,不仅限于服务器的开发.从简单性,可测试性和松耦合的角度而言,任 ...
- WordPress免费清新响应式博客/杂志/图片三合一主题Nana
WordPress免费清新响应式博客/杂志/图片三合一主题Nana 一.主题安装须知 1.本主题必须安装文章点击统计插件:WP-PostViews,可以直接在后台插件→安装插件中直接搜索安装官方最新版 ...
- Windows 下编辑 hosts 文件
hosts 文件目录: C:\WINDOWS\system32\drivers\etc\hosts hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应 ...
- 正则python正则,提取\t\n里面的大写英文字母
ss = '['\r\n\t\t\t\t\t\t\t\t\t', '\r\n\t\t\t\t\t\t\t', '\r\n\t\t\t\t\t\t\t\t\tCMA CGM JACQUES JOSEPH ...
- nodeJS 服务端文件上传
var http = require('http'); var path = require('path'); var fs = require('fs'); function uploadFile( ...
- windows环境下安装npm、cnpm、bower
什么是npm.cnpm.bower? 简单地说,就是帮你下载好你需要的css或者js库,而且三者功能也都是一样的.那为什么要下载这3个不同的呢?据说npm容易被墙……而cnpm是淘宝的镜像,所以通常用 ...