C#如何从数据库中读出一行数据并显示在listView中??

SqlConnectionconn;privatevoidFormDepartmentFilesFind_Load(objectsender,EventArgse)//窗... SqlConnection conn;
private void FormDepartmentFilesFind_Load(object sender, EventArgs e)//窗体
{
conn = new SqlConnection("server=172.16.43.55;database=CateringDB;uid=sa;pwd=123456");//连接数据库
conn.Open();
}

private void button1_Click(object sender, EventArgs e)//“查找”按钮
{
if (Textname.Text == "")
{
MessageBox.Show("部门名称不能为空,请输入部门名称");
}
else
{
SqlCommand cmd = new SqlCommand("select * from tbl_Department_Info where deptName="+ Textname.Text.Trim(), conn);
SqlDataReader reder = cmd.ExecuteReader();
while (reder.Read())
{
listView1.Items.Add(reder["deptId"].ToString());
}
conn.Close();
}
}
该如何写?求指点!
每次输入一个部门名称,然后点击查找按钮,窗口直接就关闭了。
展开
 我来答
匿名用户
2013-12-19
展开全部
在else里面加一个try catch,里面肯定存在错误的地方,然后将异常抛出来,根据异常信息看错在哪儿了。另外,非常明显的错误是,查询语句是错的
更多追问追答
追问
哪错了?SqlCommand cmd = new SqlCommand("",conn);语法不是这样吗?
追答
查询语句,查询语句里的参数需要使用单引号
select * from table where something='something'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳光的雷咩咩
2013-12-19 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7815万
展开全部

先改这句再说调试结果

"select * from tbl_Department_Info where deptName='"+ Textname.Text.Trim() + "'";
更多追问追答
追问
有什么区别吗?

调试的结果还是一样,没有显示任何内容,窗口直接自动关闭。
追答

listView1.Items.Add(reder["deptId"].ToString());前面加

if(reder["deptId"]!=null)
看是否还直接退出呢
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yqsky3964
2013-12-19 · TA获得超过1875个赞
知道小有建树答主
回答量:1184
采纳率:0%
帮助的人:666万
展开全部
把你项目发上来我帮你解决
更多追问追答
追问
其他的都还只搭了个框架,这个功能点是第一个做的,结果就碰到了问题。
弄了半天也不能从数据库中打印数据到listView中。
追答
我建议你把listView控件换成datagridview控件,那样吧查询出来结果集直接赋给datagridview就行了,用listView显示不太好!datagridview是专门用来显示格式化数据的,比如数据库的表
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式