C#访问SQL

来源:百度知道 编辑:UC知道 时间:2024/05/30 10:54:21
一个很简单的小程序,就是出不来效果,请大虾帮忙!
textBox1输入,提交,然后DataGridView显示数据库内容
在button1上onClike设置了DataGrudView的DataSource属性为数据库连接的名称DataSet
现在的问题就是DataSet查询SQL的语句不会写,我的语句代码如下:
this._commandCollection[0].CommandText = "SELECT wfbh, hphm, hpzl, wfdd, wfxw, wfsj, id FROM V_police " + "where hphm like '%" + mainform.textBox1.Text + "%'";
把其中的mainform.taxtBox1.Text设置为常量是可以访问了,结果正常!
改为mainform.textBox1.Text或者textBox1.Text就出错,
textBox1.Text:
错误 1 当前上下文中不存在名称“textBox1”
mainform.textBox1.Text:
错误 1 非静态的字段、方法或属性“tools.mainform.textBox1”要求对象引用

"+mainform.textBox1.Text+"
change to
'"+mainform.textBox1.Text+"'

是这样的
你设置的这个字符串里面引用了textBox1,那就的保证这句话执行之前textBox1是存在的,textBox1在initcomponents方法里面被实例化,所以你如果也通过UI来设置的这个字符串,代码也会被生成在这个函数中,那就会出现这个错误了。

一个简单的方案是,把这句话写到你button的Click事件中,或者什么其他的要执行数据库查询动作的事件,或者textBox1的textChanged事件中。

OK了。

mainform.textBox1.Text 改为 this.textBox1.Text,并且检查其拼写,确认大小写正确。

mainform是ApplicationContext.MainForm ,命名空间:System.Windows.Forms。这个东西并不在web命名空间之内,网站中是不能用mainform的。

这是模糊查询。
先在页面编辑GridView1的列,使相对应的列绑定到数据库中相对应列的字段,
页面代码:
<table style="width: 591px; height: 355px">
<tr>
<td style="width: 100px">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Tex