C# 使用SqlDataReader取一条记录的一个字段的字符串.
已定义:
数据库中表结构为:
---------------------
ID | Type | Title | Sequence |
---------------------
1 | 物资大类 | 采购物资 | 001 |
class DataCon
{
..............
public SqlDataReader getread(string M_str_sqlstr)
{
SqlConnection sqlcon = this.getcon();
SqlCommand sqlcom = new SqlCommand(M_str_sqlstr, sqlcon);
sqlcon.Open();
SqlDataReader sqlread = sqlcom.ExecuteReader(CommandBehavior.CloseConnection);
return sqlread;
}
}
string str1 = “采购物资”;
SqlDataReader sdr = datacon.getread("select * from tb_CodeInfo where Title='" + str1 + "'");
string str4 = sdr.GetString(3);
这样写为什么不对?我的取不出“001”这个字符串。应该怎么改?
我想用已定义的getread方法获得"001"并放在str4里。
------解决方案--------------------网上找找例子大把啊
------解决方案--------------------还要先学会下断点跟踪代码
------解决方案--------------------你数据库里不止一条数据吧??
string str1 = “采购物资”;
SqlDataReader sdr = datacon.getread("select * from tb_CodeInfo where Title='" + str1 + "'");
int num = 0;
while(sdr.Read())
{
num++;
Response.Write(sdr.GetString(3));
}
Response.Write("共有"+num+"符合条件的记录!");
------解决方案--------------------
SqlDataReader sdr = datacon.getread("select * from tb_CodeInfo where Title='" + str1 + "'");
sdr.Read();//至少要读一次,否则取不到数据。
string str4 = sdr.GetString(3);