我正在尝试将大型Excel电子表格复制到SQL Server数据库中。我正在打开OldDbConnection到Excel电子表格并从[Sheet1 $]中读取所有内容。然后,我使用OleDbCommand获取带有电子表格数据的IDataReader。
Excel表格中有多个单元格,文本内容超过256个字符。但是,一旦使用SqlBulkCopy将其上传到数据库表,我只会看到数据库中这些excel单元格的前255个字符。数据库表字段长度为5000个字符。
SqlBulkCopy会限制字段大小吗?谢谢!
答案 0 :(得分:0)
根据我对ADO数据连接的经验,在将记录集的光标位置更改为客户端时,检索和发送大型文本字符串可能会更好。
这里有一个简短的例子:
Dim rstADO As ADODB.Recordset
Set rstADO = New ADODB.Recordset
rstADO.CursorLocation = adUseClient
但仔细查看您的帖子我认为您目前没有使用ADO,如果您决定尝试在您的方法中使用ADO,则无论如何都可能值得一看。祝你好运!
答案 1 :(得分:0)
我不知道SqlBulkCopy和OldDbConnection 但Excel可能会发出前255个字符 在Excel中,如果使用.value属性访问单元格值,则会获得前255个字符,如果使用.text属性访问它,则会获得全文。希望这会给你一些想法。