当前位置: 首页 > article >正文

十一、数据库配置

一、Navicat配置

这个软件需要破解

密码是:123456;

新建连接=》新建数据库

创建一个表

保存出现名字设置

双击打开

把id设置为自动递增

这里就相当于每一次向数据库添加一个语句,会自动增长id一次

二、数据库的增删改查

1、Vs

建一个控制台的工程

2、引入Dll

三、数据库的增删改查

先看代码


using MySql.Data.MySqlClient;
using System;

class Program
{
	static MySqlConnection conn = null;
	static void Main(string[] args)
	{
		//传入连接参数:数据库名称;用户Id、密码;表的名字;字符集
		conn=new MySqlConnection("server=localhost;User Id=root;password=123456;Database=studymysql;Charset=utf8");
		conn.Open();
		//增
		//Add();
		删
		Delete();
		改
		//Update();
		查
		//Query();

		Console.ReadKey();
		conn.Close();
	}
	static void Add()
	{
		MySqlCommand cmd = new MySqlCommand("insert into userinfo set name='xixi',age=96", conn);
		cmd.ExecuteNonQuery();
		int id = (int)cmd.LastInsertedId;
		Console.WriteLine("Sql Insert Key:{0}:",id);
	}
	static void Delete()
	{
		MySqlCommand cmd = new MySqlCommand("delete from userinfo where id=1", conn);
		cmd.ExecuteNonQuery();
		Console.WriteLine("delete done");
	}
	static void Update()
	{
		MySqlCommand cmd = new MySqlCommand("update userinfo set name=@name,age=@age where id=@id", conn);
		cmd.Parameters.AddWithValue("name", "xoxo");
		cmd.Parameters.AddWithValue("age", 123);
		cmd.Parameters.AddWithValue("id", 2);

		cmd.ExecuteNonQuery();
		Console.WriteLine("update done");
	}
	static void Query()
	{
		MySqlCommand cmd = new MySqlCommand("select *from userinfo where name='xixi'",conn);
		MySqlDataReader reader=cmd.ExecuteReader();
		while (reader.Read())
		{
			int id=reader.GetInt32("id");
			string name=reader.GetString("name");
			int age = reader.GetInt32("age");

			Console.WriteLine(string.Format("sql result:id:{0} name:{1} age:{2}", id, name, age));
		}
	}
}

1、引入数据库dll

2、传入连接参数

新建一个连接在主方法中,传入连接参数

并调用增删改查的方法

注:要在连接时开启,使用后连接关闭

3、增

传入增加的信息(数据库语言)

ExecuteNonQuery方法用于执行SQL语句,如插入、更新或删除操作,这些操作不返回数据。

把最后一个id赋值给id

输出

4、删

写一个sql语句,删除id为1的数据

5、改

注:这么写可以防止SQL注入

6、查

使用一个while循环而不是if循环,原因是查找时只会找到第一个满足条件的后,不再进行查找


http://www.kler.cn/news/367048.html

相关文章:

  • nginx 路径匹配,关于“/“对规则的影响
  • 强大!Spring Boot 3.3 集成 PDFBox 轻松实现电子签章功能!
  • 10.22.2024刷华为OD C题型(三)--for循环例子
  • cpp的vector类
  • 免费PDF页面提取小工具
  • 隨筆 20241024 Kafka 数据格式解析:批次头与数据体
  • CI/CD 流水线系统-开源框架Tekton
  • windows 上面交叉编译 适合arm架构上的linux内核系统的qt 版本,源码编译
  • MYSQL-查看创建的用户语法(十二)
  • C++音视频02:环境搭建
  • 【rust实战】rust博客系统2_使用wrap启动rust项目服务
  • 基于DDPG算法的股票量化交易
  • 浮动+flex布局
  • Django项目实战-图书管理系统之项目搭建
  • c# windows 动态生成CheckBox控件
  • 前端优化:从Vue/React/Svelte的数组更新->渲染策略剖析数组大列表数据展示优化策略
  • Vue3 + TypeScript 实现 iframe 嵌入与通信的完整指南以及全屏弹窗方案
  • 最新ubuntu22.04 下列软件包有未满足的依赖关系 解决方案
  • W25Q64的学习
  • 吉客云与金蝶云星空系统高效数据对接实践
  • 好/坏代码实例解读:图文并茂说明
  • 变频器启动、停止、正/反转控制电路原理详解
  • 现在设备普遍切换成TYPE-C适配器后,一拖三数据线接口变革探析
  • 卡牌抽卡机小程序,带来新鲜有趣的拆卡体验
  • 006:看图软件ACDSeePhotoStudio2019安装教程
  • gaussdb hccdp实验练习02 GaussDB数据库开发设计