【发布时间】:2010-08-08 03:43:50
【问题描述】:
使用 C#
我有一个数据读取器,它从 mysql 数据库返回 lsit 记录。
我正在尝试编写检查数据读取器是否为空的代码。这背后的逻辑是:如果数据读取器有字段,则显示信息,否则隐藏字段。
我试过了:
cmd1 = new OdbcCommand("Select * from tb_car where vehicleno = '" + textbox2.text + "';", dbcon);
dr1 = cmd1.ExecuteReader();
if (dr1["tb_car"]. != DBNull.Value)
{
textbox1.Text = "contains data";
}
else
{
textbox1.Text = "is null";
}
上面的代码给了我这个错误:
异常详细信息:System.IndexOutOfRangeException:附加
任何帮助将不胜感激...
【问题讨论】:
-
ps。您的代码中存在巨大的安全漏洞,因为您没有使用参数。如果我输入“';从 tb_car 中删除 *;”进入您的文本字段,您将丢失所有记录!哦? =)
-
伙计,我没听懂。 @Gopal - 他是对的。请务必阅读此内容:aspnet101.com/2007/03/parameterized-queries-in-asp-net
标签: c#