丛林战争项目十之数据库查询
1.点击MySqlOperation,点击鼠标右键,设置为启动项目
2.查询一条记录
代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MySql.Data.MySqlClient;namespace MySqlOperation
{class Program{static void Main(string[] args){//Database指定数据库,Data Source指定本机ip,port指定端口号,user id指定用户名,password 指定密码,各属性之间用“;”进行分隔String connStr = "Database=test_connection;Data Source=127.0.0.1;port=3306;User Id=root;Password=123456";//建立连接,参数为连接的字符串,即ip地址、端口号、账号、密码MySqlConnection conn = new MySqlConnection(connStr);//打开连接conn.Open();//用于执行sql命令,第一个参数为一条sql语句,第二个参数为连接//查询一条id为1的用户信息MySqlCommand cmd = new MySqlCommand("select * from user where id = 1",conn);//执行查询,可以处理0到多条查询语句MySqlDataReader reader = cmd.ExecuteReader();if (reader.HasRows) //判断结果中是否有内容{reader.Read();String userName = reader.GetString("userName");String passWord = reader.GetString("passWord");Console.WriteLine(userName+" : "+passWord);}//关闭连接,先开后关reader.Close(); //关闭流conn.Close(); //关闭连接Console.ReadKey(); //让程序暂停}}
}
运行结果:
3.查询多条记录
代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MySql.Data.MySqlClient;namespace MySqlOperation
{class Program{static void Main(string[] args){//Database指定数据库,Data Source指定本机ip,port指定端口号,user id指定用户名,password 指定密码,各属性之间用“;”进行分隔String connStr = "Database=test_connection;Data Source=127.0.0.1;port=3306;User Id=root;Password=123456";//建立连接,参数为连接的字符串,即ip地址、端口号、账号、密码MySqlConnection conn = new MySqlConnection(connStr);//打开连接conn.Open();//用于执行sql命令,第一个参数为一条sql语句,第二个参数为连接//查询一条id为1的用户信息MySqlCommand cmd = new MySqlCommand("select * from user",conn);//执行查询,可以处理0到多条查询语句MySqlDataReader reader = cmd.ExecuteReader();while (reader.Read()) //判断结果中是否有内容{String userName = reader.GetString("userName");String passWord = reader.GetString("passWord");Console.WriteLine(userName+" : "+passWord);}//关闭连接,先开后关reader.Close(); //关闭流conn.Close(); //关闭连接Console.ReadKey(); //让程序暂停}}
}
运行结果:
注:
出现的异常:"MySql.Data.MySqlClient.MySQLeXCEPTION"类型的未经处理的异常在MySql.Data.dll中发生
“MySql.Data.MySqlClient.MySqlException”类型的未经处理的异常在 MySql.Data.dll 中发生
Invalid attempt to access a field before calling Read()
原因:
1.MySql服务可能没有启动
2.没有调用reader.read()方法
解决办法:1.mysql服务如果没有启动,则启动
2.如果没有调用reader.read()方法,则调用
原来的代码:
if (reader.HasRows) //判断结果中是否有内容{String userName = reader.GetString("userName");String passWord = reader.GetString("passWord");Console.WriteLine(userName+" : "+passWord);}
修改后的代码:
if (reader.HasRows) //判断结果中是否有内容{reader.Read();String userName = reader.GetString("userName");String passWord = reader.GetString("passWord");Console.WriteLine(userName+" : "+passWord);}
丛林战争项目十之数据库查询相关推荐
- 19.tornado项目之优化数据库查询
项目基本已经完工,本文就来优化一下项目中的数据库查询. 回顾项目,在/utils/account.py文件中包含了很多对于数据库的查询操作,而这些数据库查询操作都是借助于session,这个sessi ...
- 丛林战争项目八之Workbench创建数据库和表
一.数据库连接准备 1.数据库版本MySQL5.7 确保数据库的服务已经启动 2.引入MySql.Data.dll 3.使用c#连接MySQL数据库 4.对数据库进行增删改查 二.在workbench ...
- 项目服务端的创建(丛林战争项目)
1.项目的目录结构图 2.BaseController代码 using System; using System.Collections.Generic; using System.Linq; usi ...
- 客户端框架的搭建(丛林战争项目)
一.创建一个Unity项目OnlineGameClient并导入资源包 二.项目结构 三.代码 1.Manager包下 ①AudioManager using System.Collections; ...
- 服务器端分层架构(丛林战争项目)
1.Server:用来创建TCP的socket,监听客户端的连接 2.ConnHelper:工具类,用来连接数据库,建立MySQL Connection 3.Controller:用来处理客户端的请求 ...
- 解决sql注入问题(丛林战争项目)
一.正常的代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...
- 开发登陆按钮(丛林战争项目)
1.在canvas下面创建一个Text,并重命名为LoginButton,设置大小.位置.字体.颜色(白色加透明).对齐方式 2.添加点击时颜色渐变的效果,并设置移动到上面.高亮和点击时候的颜色 3. ...
- 实现以最快速度搭建springboot后台web项目并连通数据库实现控制层与服务层与dao层的select查询...
背景 Servlet的出现 上世纪90年代,随着Internet和浏览器的飞速发展,基于浏览器的B/S模式随之火爆发展起来.最初,用户使用浏览器向WEB服务器发送的请求都是请求静态的资源,比如html ...
- 万能数据库查询分析器使用技巧之(十四)
万能数据库查询分析器使用技巧之(十四) 马根峰 (广东联合电子服务股份有限公司, 广州 510300) 摘要 本文详细地介绍了" ...
最新文章
- 如何快捷输入函数上方的注释代码(Summary)
- C++ primer记录
- ECSHOP 模版文件里的编辑区域
- iOS网络层架构设计分享
- Docker引擎(engine)详解
- Java关键字synchronized的简单理解
- 吃鸡电脑配置清单_2020年5月份最佳组装电脑配置清单,吃鸡联盟总有满足你的...
- 为ASP.NET 2.0网站生成唯一程序集
- python如何操作oracle数据库_Python连接oracle数据库的基本操作
- 电脑网页如何截取全图(长图)
- NPS 3.0:净推荐值的补充性财务指标 - 赢得性增长率(EGR)
- kafka报错zookeeper is not a recognized option
- 超实用的容器镜像漏洞检测工具 Trivy 入门指南
- 解决Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111) or sock‘(2)
- imputation文献-A systematic evaluation of single-cell RNA-sequencing imputation methods
- 大学英语(第三册)复习(原文及全文翻译)——Unit 7 - The Shelter(防空洞)
- 机器学习:公式推导与代码实现全书代码!
- 番茄助手 Visual Assist X 下载安装及使用
- nginx【nginx跨域、nginx开启gizp压缩、nginx服务器部署项目】
- 影视网站设计报告代码MySQL_基于PHP的视频网站的设计与实现(MySQL)(含录像)