5

DataTable将从该 SQL 查询生成的行数最少的代码是什么?

SELECT * 
FROM [Table1] 
WHERE ([Date] BETWEEN @Date1 AND @Date2) AND 
      ([Field1] IS NULL OR [Field2] IS NULL)
4

3 回答 3

16

使用SqlDataAdapter填充 DataTable。

DataTable dt = new DataTable();
using (SqlConnection yourConnection = new SqlConnection("connectionstring"))
{
    using (SqlCommand cmd = new SqlCommand("....your sql statement", yourConnection))
    {
        using (SqlDataAdapter da = new SqlDataAdapter(cmd))
        {
            da.Fill(dt);
        }
    }
}

using块与您的SqlConnection,一起使用SqlCommandSqlDataAdapter因为它们实现了IDisposable接口。也使用参数化查询

于 2012-10-18T05:49:53.210 回答
3

尝试这个

SqlCommand command = new SqlCommand(query, conn);
DataTable dt = new DataTable();
using(SqlDataReader reader = command.ExecuteReader())
{
     dt.Load(reader);
}
于 2012-10-18T05:54:10.213 回答
1

SqlDataAdaptor 和 FillSchema

它将即时创建您的表格

应用于数据集

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldataadapter.aspx

应用于数据表

http://msdn.microsoft.com/en-us/library/152bda9x.aspx

于 2012-10-18T05:50:33.380 回答