请教sql语句的执行问题
当sqlcmd.CommandText = "Select id,qymc from wzqy where id=2";这句语句改为sqlcmd.CommandText = "Select id,qymc from wzqy"时,sr["qymc"]取出的是null
[解决办法]
sr["qymc"]是什么东东?
[解决办法]
面的值原本就是null吧
[解决办法]
如果数据有以上情况 sr不就是null吗
所以reader是这样用的
- C# code
while (reader.Read()){ //to do here}
[解决办法]
是不是没有调用sr.read()?
[解决办法]
没明白
[解决办法]
Select id,qymc from wzqy
sr["qymc"]拿出来的是最后一条记录的qymc 值...
[解决办法]
看他是不是null是的话就没错..
[解决办法]
…… 不可能啊
- C# code
private void button1_Click(object sender, EventArgs e) { SqlCommand sqlcmd=new SqlCommand(); sqlcmd.CommandText = "Select id,qymc from wzqy "; sqlcmd.Connection = conn; conn.Open(); SqlDataReader sr = sqlcmd.ExecuteReader(); while(sr.Read()) { MessageBox.Show(sr["qymc"].ToString()); } conn.Close();}
[解决办法]
代码上没有问题,你检查一下数据库连接是不是连错数据库了?
[解决办法]
- C# code
private void button1_Click(object sender, EventArgs e) { SqlCommand sqlcmd=new SqlCommand(); sqlcmd.CommandText = "Select id,qymc from wzqy "; sqlcmd.Connection = conn; conn.Open(); SqlDataReader sr = sqlcmd.ExecuteReader(); if (sr.Read()) { while(sr.Read()) { MessageBox.Show(sr["qymc"].ToString()); } }conn.Close();
[解决办法]
数据库中有多行,第二次取到了其他的行,而此行id就为null
[解决办法]
数据库中有多行
[解决办法]
与多少行没有关系,搂主看看你的conn 的connectionstring是不是连接正确了。