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 ...
随机推荐
- 初见微服务之RESTful API
1. REST名称由来 REST全称为Representational State Transfer,即表述性状态转移,最早由Roy Feilding博士在世纪之交(2000年)提出,喜欢追根溯源的朋 ...
- POJ 3050 Hopscotch(dfs,stl)
用stack保存数字,set判重.dfs一遍就好.(或者编码成int,快排+unique #include<cstdio> #include<iostream> #includ ...
- 同余问题(一)——扩展欧几里得exgcd
前言 扩展欧几里得算法是一个很好的解决同余问题的算法,非常实用. 欧几里得算法 简介 欧几里得算法,又称辗转相除法. 主要用途 求最大公因数\(gcd\). 公式 \(gcd(a,b)=gcd(b,a ...
- 机器学习中正则化项L1和L2的直观理解
正则化(Regularization) 概念 L0正则化的值是模型参数中非零参数的个数. L1正则化表示各个参数绝对值之和. L2正则化标识各个参数的平方的和的开方值. L0正则化 稀疏的参数可以防止 ...
- Drupal忘记管理员密码
第一步:登陆录到phpmyadmin(通用的mysql数据库管理工具),进入phpmyadmin后,找到与drupal7相关联数据库并在数据库中找到一张名为“users”的表,然后选择浏览. 第二步: ...
- sass安装更新及卸载方法
在 Windows 平台下安装 Ruby 需要先有 Ruby 安装包,大家可以到 Ruby 的官网(http://rubyinstaller.org/downloads)下载对应需要的 Ruby 版本 ...
- Oracle 配置文件目录
Oracle 配置文件目录 ① 在oracle安装目录下,找D:\oracle\product\10.2.0\client_1\NETWORK\ADMIN中的tnsnames.ora文件,找到之后,配 ...
- 解决: Intelij IDEA 创建WEB项目时没有Servlet的jar包
今天创建SpringMVC项目时 用到HttpServletRequest时, 发现项目中根本没有Servlet这个包, 在网上搜了一下,这个问题是因为web项目没有添加服务器导致的. 配置tomec ...
- SpringBoot之YAML
SpringBoot的配置文件有两种,一种是properties结尾的,一种是以yaml或yml文件结尾的 我们讨论一下yml文件结尾的文件: 基本语法: 其实yml文件就是键值对的形式,不过就是键( ...
- javascript隐藏和显示元素以及清空textarea
当前希望写一个单选框,选中“paste”则显示粘贴框,选中“upload”则提示选择文件. 因为这两种情况只是显示不同,所以只需要用javascript来进行显示和隐藏. 最后的结果大概这样: 初始时 ...