就是一个查询问题 但是 明明是可以的 为什么每次显示 0或者-1
我发誓,我是都测试过了 还是不可以才提问的。
问题就是一个数据库查询问题:
窗体的。
节目有: 一个TextBox 和一个 查询按钮
点击查询 按钮 执行下面的代码: string chaxunstr = "select * from KC_table where KC_name='"+textBox5.Text.Trim().ToString()+"'";
ClassSQL newsql = new ClassSQL();
newsql.SQLopen();
int reg=newsql.DBoperarion(chaxunstr);
if (reg>0)
{
MessageBox.Show("查到结果了!");
SqlDataAdapter da = new SqlDataAdapter("select * from KC_table where KC_name='" + textBox5.Text.Trim().ToString() + "'", newsql.SQLcon);
DataSet ds = new DataSet();
da.Fill(ds, "new_table");
dataGridView1.DataSource = ds.Tables[0];
newsql.SQLclose(); }
else
{
newsql.SQLclose();
MessageBox.Show("查不到东西");
}问题 每次 都是 返回 0 或者-1 都不会得到1
用的是 SQL 2008 的 我在 数据的 T-SQL 查询执行下面的代码
select * from KC_table where KC_name='世贸商城'
就可以显示 该行
麻烦 帮忙一下 谢谢这个是 数据库的 执行代码/// <summary>
/// 数据库执行语句
/// </summary>
/// <param name="OPstring"></param>
/// <returns></returns>
public int DBoperarion(string OPstring)
{
SqlCommand mycmd = new SqlCommand(OPstring, SQLcon);
try
{
int OPresult = mycmd.ExecuteNonQuery();
return OPresult;
}
catch
{
return 0;
}
finally
{
SQLclose();
}
}
我发誓,我是都测试过了 还是不可以才提问的。
问题就是一个数据库查询问题:
窗体的。
节目有: 一个TextBox 和一个 查询按钮
点击查询 按钮 执行下面的代码: string chaxunstr = "select * from KC_table where KC_name='"+textBox5.Text.Trim().ToString()+"'";
ClassSQL newsql = new ClassSQL();
newsql.SQLopen();
int reg=newsql.DBoperarion(chaxunstr);
if (reg>0)
{
MessageBox.Show("查到结果了!");
SqlDataAdapter da = new SqlDataAdapter("select * from KC_table where KC_name='" + textBox5.Text.Trim().ToString() + "'", newsql.SQLcon);
DataSet ds = new DataSet();
da.Fill(ds, "new_table");
dataGridView1.DataSource = ds.Tables[0];
newsql.SQLclose(); }
else
{
newsql.SQLclose();
MessageBox.Show("查不到东西");
}问题 每次 都是 返回 0 或者-1 都不会得到1
用的是 SQL 2008 的 我在 数据的 T-SQL 查询执行下面的代码
select * from KC_table where KC_name='世贸商城'
就可以显示 该行
麻烦 帮忙一下 谢谢这个是 数据库的 执行代码/// <summary>
/// 数据库执行语句
/// </summary>
/// <param name="OPstring"></param>
/// <returns></returns>
public int DBoperarion(string OPstring)
{
SqlCommand mycmd = new SqlCommand(OPstring, SQLcon);
try
{
int OPresult = mycmd.ExecuteNonQuery();
return OPresult;
}
catch
{
return 0;
}
finally
{
SQLclose();
}
}
/// 数据库执行语句
/// </summary>
/// <param name="OPstring"></param>
/// <returns></returns>
public int DBoperarion(string OPstring)
{
SqlCommand mycmd = new SqlCommand(OPstring, SQLcon);
try
{
int OPresult = mycmd.ExecuteNonQuery();
return OPresult;
}
catch
{
return 0;
}
finally
{
SQLclose();
}
}你太搞了,不能用 ExecuteNonQuery
要 用ExecuteReader() 或是用 SqlAdapter
对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1。
try
{
int OPresult = mycmd.ExecuteNonQuery();
return OPresult;
}
catch
{
return 0;
}
finally
{
SQLclose();
}
你那是增删改的方法
不知道怎么说你了
//属性:数据库链接对象
private static SqlConnection conn;
public static SqlConnection Conn
{
get
{
try
{
// string configValue = ConfigurationManager.ConnectionStrings["ServerName"].ConnectionString;
string connstr = "server=.;database=cs;User ID=sa;Password=test";
if (conn == null)
conn = new SqlConnection(connstr);
if (conn.State == ConnectionState.Closed)
conn.Open();
if (conn.State == ConnectionState.Broken)
{
conn.Close();
conn.Open();
}
return conn;
}
catch (Exception ex)
{ throw;
}
}
} //查询:DataTable
public static DataTable GetTable(string SqlStr)
{
try
{
SqlDataAdapter dap = new SqlDataAdapter(SqlStr, Conn);
DataSet ds = new DataSet();
dap.Fill(ds);
conn.Close();
return ds.Tables[0];
}
catch (Exception ex)
{ throw;
}
} //增删改
public static bool Execute(string SqlStr)
{
SqlCommand cmd = new SqlCommand(SqlStr, Conn);
int result = cmd.ExecuteNonQuery();
conn.Close();
return result > 0;
}
{
SqlCommand mycmd = new SqlCommand(OPstring, SQLcon);
try
{
int OPresult = mycmd.ExecuteNonQuery();
return OPresult;
}
catch
{
throw;
}
finally
{
SQLclose();
}
}
/// <summary>
/// 数据库执行语句
/// </summary>
/// <param name="OPstring"></param>
/// <returns></returns>
public int DBoperarion(string OPstring)
{
SqlCommand mycmd = new SqlCommand(OPstring, SQLcon);
try
{
SqlDataReader reader = mycmd.ExecuteDataReader();
string test = reader["字段"]
return OPresult;
}
catch
{
return 0;
}
finally
{
SQLclose();
}
}
execute.scalar
ClassSQL newsql = new ClassSQL();
newsql.SQLopen();
int reg=newsql.DBoperarion(chaxunstr);
修改如下
public int DBoperarion(string OPstring)
{
SqlCommand mycmd = new SqlCommand(OPstring, SQLcon);
try
{
int OPresult = mycmd.ExecuteScalar();
return OPresult;
}
catch
{
return 0;
}
finally
{
SQLclose();
}
}