小编use*_*485的帖子

在 Datareader 中处理 NULL

这是我用来通过 DataReader 从 sql 读取数据的代码。当表中存在 NULL 时,它会给出错误。怎么处理呢?

我试过

c.ActualWeight= dr[0] as float? ?? default(float);
Run Code Online (Sandbox Code Playgroud)

这样做的问题是,它成功处理 NULL,但结果始终为 0,即使 sql 数据库在该字段中具有值 1。

{ 
    List<Inventory_Connector> LC = new List<Inventory_Connector>();
    string ConString = "data source=DELL\\SQLSERVER1;Initial Catalog=Camo;Integrated Security=True";
    SqlConnection con = new SqlConnection(ConString);
    SqlCommand cmd = new SqlCommand("Select Top 17 * from Inventory_Connector", con);
    con.Open();
    SqlDataReader dr = cmd.ExecuteReader();

    while (dr.Read())
    {
        c.ActualWeight = float.Parse(dr[0].ToString().Trim());
    }

    LC.Add(c);
}

dr.Close();
con.Close();
return LC;
Run Code Online (Sandbox Code Playgroud)

c# sql datareader sqldatareader

1
推荐指数
1
解决办法
6172
查看次数

将SQL数据导出到Excel非常慢

我正在将SQL数据导出到Excel.我目前使用的代码是:

    DataTable dt = new DataTable();
            // Create sql connection string
            string conString = "Data Source=DELL\\SQLSERVER1;Trusted_Connection=True;DATABASE=Zelen;CONNECTION RESET=FALSE";

            SqlConnection sqlCon = new SqlConnection(conString);
            sqlCon.Open();


            SqlDataAdapter da = new SqlDataAdapter("select LocalSKU,ItemName, QOH,Price,Discontinued,CAST(Barcode As varchar(25)) As Barcode,Integer2,Integer3,ISNULL(SalePrice,0.0000)AS SalePrice,SaleOn,ISNULL(Price2,0.0000)AS Price2 from dbo.Inventory", sqlCon);

            System.Data.DataTable dtMainSQLData = new System.Data.DataTable();

            da.Fill(dtMainSQLData);
            DataColumnCollection dcCollection = dtMainSQLData.Columns;

            // Export Data into EXCEL Sheet
            Microsoft.Office.Interop.Excel.ApplicationClass ExcelApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
            ExcelApp.Application.Workbooks.Add(Type.Missing);



            int i = 1;
            int j = 1;
            int s = 1;
            //header row
            foreach (DataColumn col in dtMainSQLData.Columns) …
Run Code Online (Sandbox Code Playgroud)

c# export export-to-excel sql-server-2008-r2

0
推荐指数
1
解决办法
6404
查看次数