C# OLEDB命令并从Excel中选择转换[“列”]
你们知道如何在oledbcommand select语句上转换吗?下面是我试图做的,但我仍然得到错误。我正在使用它在sql上的数据库上添加到bulkcopy.WritetoServerExcelDataRowC# OLEDB命令并从Excel中选择转换[“列”],c#,excel,C#,Excel,你们知道如何在oledbcommand select语句上转换吗?下面是我试图做的,但我仍然得到错误。我正在使用它在sql上的数据库上添加到bulkcopy.WritetoServerExcelDataRow // Simple Example of what I'm trying to do... OleDbCommand cmdExcel = new OleDbCommand("select Convert[Order Number] as decimal(17,7) as Orde
// Simple Example of what I'm trying to do...
OleDbCommand cmdExcel = new OleDbCommand("select Convert[Order Number] as decimal(17,7) as Order_Number from [" + ddlSheetName + "]", connExcel);
bulkcopy.ColumnMappings.Add("[Order Number]", "ORDER_NUM");
bulkcopy.WriteToServer(ExcelDataRow);
Convert[Order Number]缺少小数17,7,似乎是T-SQL的转换/转换语法的混合,与Excel驱动程序无关。十进制有CDec[订单号],但我认为最好的办法是按原样返回,或者用cstr作为字符串返回,然后根据需要用C重新转换。可以吗。。。如果您将该方法的示例语法作为一个整体发布在上面的示例代码中?谢谢…Excel引擎不支持转换使用类似的东西:从[+ddlSheetName+$]中选择订单号作为订单号,将此查询加载到DataTable,并使用C从应用程序进行转换。