C# 从mysql里读取数据

priesthgink 2014-04-21 10:28:38
我之前有从mysql里写入数据,用了executenonquery,成功了,后来需要从mysql里读取数据,但是这次debug的时候突然闪退,不知道为啥,求大神解答下。

这是命名空间

using MySQLDriverCS;
using MySql.Data;

下面是读取数据的代码

private void Button1_Click(object sender, EventArgs e)
{
MySQLConnection conn = null;
conn = new MySQLConnection(new MySQLConnectionString("localhost", "database", "root", "password").AsString);
conn.Open();
string sql = "select COLUMN_NAME from information_schema.columns where table_name='orders';";
MySQLCommand mySqlCommand = new MySQLCommand(sql, conn);
var reader = mySqlCommand.ExecuteReader();
}


但是我把ExecuteReader换成executenonquery的时候又没问题了,不会闪退,表示真心不知道哪里出错了,这又不会报错,求大神解救
...全文
1696 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_32391905 2016-05-23
  • 打赏
  • 举报
回复
我也遇到同样的问题,想问下你是具体哪里出错了
priesthgink 2014-04-23
  • 打赏
  • 举报
回复
引用 1 楼 wind_cloud2011 的回复:
你一步步执行看一下, while (reader.Read()) { } conn.Close(); 看没有读取数据,
谢谢,已经知道哪里出错了,句子的语法没错,是别的地方出错了。
priesthgink 2014-04-23
  • 打赏
  • 举报
回复
引用 2 楼 Z65443344 的回复:
读完数据你要放到dataset里啊. 没定义dataset,程序不报错?
不需要放在dataset里,直接放在reader里,然后我存在table里了,已经知道哪里出错了,谢谢。
priesthgink 2014-04-23
  • 打赏
  • 举报
回复
引用 3 楼 zhang1struts1yun 的回复:
ExecuteReader 用法不对,(mySqlCommand.ExecuteReader() ,谁教你的啊,难道是你自己想象的?) 读取数据要用mysqldatareader 你的那个executenonquery是执行所有语句,所以不报错,(你根本不懂ado) 是不是新手啊你?
1.我是新手 2.mysql的官网里就有mysqlcommad.executereader这个命令去读取数据库 3.不报错根本就不是你说的那个原因 4.我已经找到哪个地方出错了- -语句都没错,是别的地方出错了,拜托您,您回答个问题还过来嘲讽一下,咱不就是不懂才来虚心求教的么,而且您要是说对了还罢了,说了半天还是个错的。
於黾 2014-04-21
  • 打赏
  • 举报
回复
读完数据你要放到dataset里啊. 没定义dataset,程序不报错?
wind_cloud2011 2014-04-21
  • 打赏
  • 举报
回复
你一步步执行看一下, while (reader.Read()) { } conn.Close(); 看没有读取数据,
zhang1struts1yun 2014-04-21
  • 打赏
  • 举报
回复
ExecuteReader 用法不对,(mySqlCommand.ExecuteReader() ,谁教你的啊,难道是你自己想象的?) 读取数据要用mysqldatareader 你的那个executenonquery是执行所有语句,所以不报错,(你根本不懂ado) 是不是新手啊你?

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧