主题:求救!!c#连接mysql数据库对新插入的数据不能进行查询
zhaoli830617
[专家分:0] 发布于 2005-12-21 17:22:00
求救,为什么我连接的mysql数据库,插入可以正常插入,但是查询的时候却查不到呢?但是手工添加的数据就可以查的到!!!谢谢哪位大哥、大姐帮我一下吧!!!
代码如下:
string myConnectionString ="DSN=test;UID=root;PWD=123456";
OdbcConnection MyConn;
OdbcCommand MyCmd = new OdbcCommand();
MyConn = new OdbcConnection(myConnectionString);
MyConn.Open();
MyCmd.Connection = MyConn;
string mysql= "Select * from student where name = '" + name.Text + "'" ;
MyCmd.CommandText = mysql.ToString();
OdbcDataReader result = MyCmd.ExecuteReader(CommandBehavior.CloseConnection);
int nResultCount = 0;
while ( result.Read() )
{
show.AppendText("您查询"+name.Text+"学生的成绩为:");
show.AppendText(result.GetString(2));
succ = true;
++nResultCount;
}
回复列表 (共11个回复)
板凳
zhaoli830617 [专家分:0] 发布于 2005-12-22 08:16:00
不报错,但是就是查询不出来!删除也删除不了!但是数据库中还有数据,重起之后也是同样的结果!
3 楼
紫忆 [专家分:2480] 发布于 2005-12-22 13:31:00
那一定是你where语句有错误了!!自己检查一下把
4 楼
zhaoli830617 [专家分:0] 发布于 2005-12-22 14:02:00
where 语句没有错呀!用like 也不行,如果where 语句有错,原库中的数据也应该查询不了呀!
5 楼
tujun [专家分:1190] 发布于 2005-12-23 15:10:00
那就是数据没有插入到数据库中
6 楼
zhaoli830617 [专家分:0] 发布于 2005-12-23 16:01:00
数据已经插入到数据库中了,在mysql的表中可以看得到!
7 楼
凭栏 [专家分:240] 发布于 2005-12-23 16:13:00
//**************最后这个地方***********
while ( result.Read() )
{
show.AppendText("您查询"+name.Text+"学生的成绩为:");
show.AppendText(result.GetString(2));
succ = true;
++nResultCount;
}
//********是不是应该这样************
while ( result.Read() )
{
show.AppendText("您查询"+name.Text+"学生的成绩为:");
show.AppendText(result["成绩(这里写成绩那个字段名)"].GetString(2));
succ = true;
++nResultCount;
}
//******你试试看?***
8 楼
aabb00 [专家分:0] 发布于 2007-12-23 21:05:00
# show.AppendText(result.GetString(2));
GetString是方法,里面要填字段名;或者用index索引,要用result[index]格式。
好久不搞.net,快忘完了,具体可查msdn,可详细了。
另外,.net真是好,提供了与各种数据库连接的接口,仅仅是个接口而已,具体数据操作还是由ADO.NET处理。
我测试下由access转mysql,源代码只需更改这一句,真是爽呆啦。
OdbcConnection conn = new OdbcConnection("DSN=test;UID=root;PWD=123456");
9 楼
yzhqi520 [专家分:0] 发布于 2008-02-01 15:19:00
我用你的代码跑了一遍没有错!
10 楼
zzglxl [专家分:0] 发布于 2008-02-04 00:13:00
string mysql= "Select * from student where name = '" + name.Text + "'" ;
问题应该出现在这句了……name.Text.ToString().Trim();
我来回复