第一次使用 asp 连接数据库,想把数据库中符合的数据全都读出来,怎么修改代码?

2014-09-13 21:44:36 +08:00
 xarrow
<pre>
//个人测试代码
conn.Open();
string sql = string.Format("select * from ta where username like '{0}%' ",getinput);
SqlDataAdapter adapter = new SqlDataAdapter(sql,conn);
DataSet ds = new DataSet();
adapter.Fill(ds);
foreach (DataRowView drv in ds.Tables[0].DefaultView)
{
data_label.Text = "UserName:" + drv["username"] +"</br>"+ "Password:" + drv["password"] + "</br>"+" Email:" + drv["mail"];
}


conn.Close();
</pre>


页面返回总是得到最后一条数据,要求查找出全部符合的数据.
2739 次点击
所在节点    问与答
10 条回复
clijiac
2014-09-13 22:12:57 +08:00
data_label.Text 后面 =改成+=
xarrow
2014-09-13 22:15:44 +08:00
@clijiac 新手新手!哈哈
cxe2v
2014-09-13 22:54:45 +08:00
你已经查找出所有数据了,只是你显示的时候只显示了最后一条而已
ChiChou
2014-09-13 23:29:48 +08:00
不要这样用字符串拼接 SQL,你已经搞了个带 sql 注入漏洞的程序出来……
xarrow
2014-09-13 23:34:48 +08:00
@cxe2v 怎么讲?这是上学期的代码了,都忘了差不多了,现在重用
xarrow
2014-09-13 23:36:21 +08:00
@ChiChou 那应该怎么防注入呢?
cxe2v
2014-09-13 23:41:35 +08:00
你那个for循环里,不停的在给data_label.Text赋值,for循环执行到最后一次就给data_label.Text赋上了最后一条数据的值,你看到的当然就是最后一条了
xarrow
2014-09-13 23:55:06 +08:00
@cxe2v 谢谢!我知道该怎么做了!
ChiChou
2014-09-14 00:03:13 +08:00
@xarrow 应该使用参数绑定。不过我平时用的是别的语言,ASP.NET 在做参数绑定的时候,具体用到哪些类不太清楚。

在网上找了个跟你需求类似的文章: http://www.soaspx.com/dotnet/asp.net/tech/tech_20120625_9316.html
xarrow
2014-09-14 00:13:14 +08:00
@ChiChou 长见识了!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/133284

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX