我写的一个查询数据库的函数,如下,在第一次运行的时候,没有问题。但是连续第二次运行的时候,就会在标注的地方报错。说什么系统错误,郁闷的就是这种不清不楚的提示。 希望大家不吝赐教!public static DataSet Query(string StrConnect,string Strsql)
{
int icount=0;
if(Strsql.Trim().Length>0)
{
SqlConnection conn = new SqlConnection(StrConnect);
conn.Open();
System.Data.SqlClient.SqlDataAdapter da=new SqlDataAdapter(Strsql,conn);
if(conn.State==ConnectionState.Open)
{
conn.Close();
} DataSet ds=new DataSet();
if(ds.Tables.Count!=0)
{
ds.Clear();
}
else
{
//da.TableMappings.Clear();
da.Fill(ds); //*****
}
return ds;
}
else
{
return null;
}
}
{
int icount=0;
if(Strsql.Trim().Length>0)
{
SqlConnection conn = new SqlConnection(StrConnect);
conn.Open();
System.Data.SqlClient.SqlDataAdapter da=new SqlDataAdapter(Strsql,conn);
if(conn.State==ConnectionState.Open)
{
conn.Close();
} DataSet ds=new DataSet();
if(ds.Tables.Count!=0)
{
ds.Clear();
}
else
{
//da.TableMappings.Clear();
da.Fill(ds); //*****
}
return ds;
}
else
{
return null;
}
}
在return ds 前 conn.Close();
另外da不需要conn.open
coon是new的,
dataset 是new的
dataAdapter也是new的。为什么还会出现这个问题。
**********************************************************
An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in system.data.dllAdditional information: System error.
**********************************************************
是不是我的数据库有问题,验证方面的。
但就是将数据邦定到datagrid的时候只有第一次可以, 以后就会出现 “系统错误”
抓狂了……
{
string strSQL=SQL;
myConn=new sqlConnection(stringConnection);
da=new SqlDataAdapter(strSQL,myConn);
da.fill(ds,TableName);
return ds;
}
this.dataGrid1.dataSource=null;
this.dataGrid1.DataBindings.Clear();没有任何用处。