SqlCommand cmd;
string strCon="server=XCH;database=aaa;uid=sa;pwd=;";
if(TextBox1.Text.Length>0)
{
string strqry="select admin from Table1 where (id='"+TextBox1.Text+"')";
SqlConnection conn=new SqlConnection(strCon);
conn.Open();
cmd=new SqlCommand(); //直接使用new 关键字来创建
cmd.CommandText=strqry;
cmd.Connection=conn; //设置与数据库的连接
}
else
{
Response.Write("<script language=javascript>alert('没有符合条件的表单,请重新查询!');</script>");
}
string strCon="server=XCH;database=aaa;uid=sa;pwd=;";
if(TextBox1.Text.Length>0)
{
string strqry="select admin from Table1 where (id='"+TextBox1.Text+"')";
SqlConnection conn=new SqlConnection(strCon);
conn.Open();
cmd=new SqlCommand(); //直接使用new 关键字来创建
cmd.CommandText=strqry;
cmd.Connection=conn; //设置与数据库的连接
}
else
{
Response.Write("<script language=javascript>alert('没有符合条件的表单,请重新查询!');</script>");
}
再者看看你数据库中ID 是string 还是int
如果int
还要改这个 where (id="+TextBox1.Text+")
string strCon="server=XCH;database=aaa;uid=sa;pwd=;";
if(TextBox1.Text.Length>0)
{
string strqry="select admin from Table1 where (id='"+TextBox1.Text+"')";
SqlConnection conn=new SqlConnection();
conn.ConnectionString = strCon;
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = strqry;
conn.Open();
cmd.ExecuteScalar();
conn.Close();
}
else
{
Response.Write("<script language=javascript>alert('没有符合条件的表单,请重新查询!');</script>");
}
对 如果ID是INT型的不需要用字符穿连接 直接id="+TextBox1.Text+"就可以
if(TextBox1.Text.Length>0)
{
string strqry="select admin from Table1 where (id='"+TextBox1.Text+"')";
SqlConnection conn=new SqlConnection();
conn.ConnectionString = strCon;
cmd=new SqlCommand();
cmd.CommandText = strqry;
conn.Open();
cmd.ExecuteScalar();
conn.Close();
}
这样写点击查询后报错
异常详细信息: System.InvalidOperationException: ExecuteReader: Connection 属性尚未初始化
if(TextBox1.Text.Length> 0)
{
string strqry= "select admin from Table1 where (id= ' "+TextBox1.Text+ " ') ";
SqlConnection conn=new SqlConnection();
conn.ConnectionString = strCon;
cmd=new SqlCommand();
cmd.CommandText = strqry;
conn.Open();
cmd.ExecuteScalar();
conn.Close();
}
string strCon="server=XCH;database=aaa;uid=sa;pwd=;";
if(TextBox1.Text.Length>0)
{
string strqry="select admin from Table1 where (id='"+TextBox1.Text+"')";
SqlConnection conn=new SqlConnection();
conn.ConnectionString = strCon;
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = strqry;
conn.Open();
cmd.ExecuteScalar();
conn.Close();
}
else
{
Response.Write("<script language=javascript>alert('没有符合条件的表单,请重新查询!');</script>");
}
报错
不能在此范围内声明名为“cmd”的局部变量,因为这样会使“cmd”具有不同的含义,而它已经用于“父级或当前”范围以表示其他内容
该怎么解决呢 帮帮忙吧
string strCon="server=XCH;database=aaa;uid=sa;pwd=;";
if(TextBox1.Text.Length>0)
{
string strqry="select admin from Table1 where (id='"+TextBox1.Text+"')";
SqlConnection conn=new SqlConnection();
conn.ConnectionString = strCon;
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = strqry;
conn.Open();
cmd.ExecuteScalar();
conn.Close();
}
else
{
Response.Write("<script language=javascript>alert('没有符合条件的表单,请重新查询!');</script>");
} 报错啊
{
string strSql = "INSERT INTO CarInfo(CarGuid,CarNo,CarCard,CarIn) VALUES('"+model.CarGuid+
"','"+model.CarNo+"','"+model.CarCard+"','"+model.CarIn+"')"; SqlConnection cn = new SqlConnection();
cn.ConnectionString = ConfigurationManager.ConnectionStrings["SqlConnection"].ConnectionString;
SqlCommand cmd = cn.CreateCommand();
cmd.CommandText = strSql;
cmd.CommandType = CommandType.Text;
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}楼主为什么你会报错呢,你参照我的代码看看呢。
ConfigurationManager.ConnectionStrings["SqlConnection"].ConnectionString; 这句话就相当于你的strCon.
我少写了一句代码。
我给你的代码的cmd.CommandText = strqry;
下面少了句cmd.CommandType = CommandType.Text;
{
string strCon="server=XCH;database=aaa;uid=sa;pwd=;";
if(TextBox1.Text.Length>0)
{
string strqry="select admin from Table1 where (admin='"+TextBox1.Text+"')";
SqlConnection conn=new SqlConnection();
conn.ConnectionString = strCon;
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = strqry;
cmd.CommandType = CommandType.Text;
conn.Open();
cmd.ExecuteScalar();
conn.Close();
}
else
{
Response.Write("<script language=javascript>alert('没有符合条件的表单,请重新查询!');</script>");
}
}
可我要把结果显示在datagrid中 该怎样做
这样就可以了
这样就可以了
对 就这么绑定 给gridview设置数据源this.gridview.DataSource = cmd.ExecuteReader();
this.gridview.DataBind();
{
string sql = "select id,admin,pwd from Table1";
DataSet ds = new DataSet();
SqlConnection conn = new SqlConnection("server=XCH;database=aaa;uid=sa;pwd=");
SqlCommand comm = new SqlCommand(sql, conn);
SqlDataAdapter da = new SqlDataAdapter(comm);
conn.Open();
da.Fill(ds,"admin");
this.Grid1.DataKeyField = "id";
this.Grid1.DataSource = ds.Tables["admin"].DefaultView;
this.Grid1.DataBind();
conn.Close();
}
private void Button1_Click(object sender, System.EventArgs e)
{
string strCon="server=XCH;database=aaa;uid=sa;pwd=;";
if(TextBox1.Text.Length>0)
{
string strqry="select admin from Table1 where (admin='"+TextBox1.Text+"')";
SqlConnection conn=new SqlConnection();
conn.ConnectionString = strCon;
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = strqry;
cmd.CommandType = CommandType.Text;
conn.Open();
this.Grid1.DataSource = cmd.ExecuteScalar();
this.Grid1.DataBind();
conn.Close();
}
这样出来的是一列啊 我要查询一行
我是要在admin这列中的一个数据,在表中查询admin这一行的数据
SqlConnection conn=new SqlConnection();
conn.ConnectionString = strCon;
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = strqry;
cmd.CommandType = CommandType.Text;
conn.Open();
this.datagrid1.DataSource = cmd.ExecuteReader();
this.datagrid1.DataBind();
conn.Close();
这样就对了