我有一个ASP.NET 4.0 web app
将数据从 a 读取SQL Server 2008 R2
到DataSet
. 现在我想将此数据写入xls
文件(Office 2003)。目前,我使用创建一个空工作表CREATE TABLE
,并使用插入语句将数据逐行写入其中。但我真正想要的是根据数据集中的数据类型格式化 excel 文件中的列。例如,如果数据集中的字段是 system.decimal 类型,我希望将 excel 中的相应列格式化为小数。
到目前为止,我已经在我的CREATE TABLE statement
. 我尝试SQL datatypes
了(int、bigint、money、datetime、bit、nvarchar 和 xml 是我的数据库使用最多的),我也尝试了几个Excel-specific datatypes
以及几个OleDB
特定的,但没有成功。数据被写入文件,但列保持默认格式。
一些详细信息:
String AceConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filename + "; Extended Properties=\"Excel 8.0; HDR=YES; IMEX=0; READONLY=FALSE;\""; //filename is the target xls file
**example CREATE TABLE statement (with SQL datatypes for the fields)**
CREATE TABLE [Report22.10.2013 14:45] ([IDKatalog] Int, [KatalogName] NVarChar(255), [Tabellenname] NVarChar(255), [KomplettUpdate] Bit, [IDLieferant] Int, [FreigabeVon] NVarChar(255), [FreigabeVonEMail] NVarChar(255), [IDKatalogAS] Int)
是否可以使用 设置队形OLEDB
?我知道您无法更改颜色、字体、宽度等数据表示,但我可以确定单元格格式吗?