1
我正在使用BCP导出和导入数据,但似乎不支持SQLNUMERIC或SQLDECIMAL数据类型。出口似乎是罚款:批量数据源不支持SQLNUMERIC或SQLDECIMAL数据类型
-- hit alt+Q then M to enable SQLCMD mode
use tempdb
go
create table mytest (a decimal);
insert mytest values (3.3);
-- export to c drive
!!bcp "tempdb..mytest" out "c:\mytest.dat" -T -n -S"YourServer\YourInstance"
!!bcp "tempdb..mytest" format nul -T -n -f "c:\mytest.fmt" -S"YourServer\YourInstance"
GO
这工作不错,但是当我然后去导入数据备份(像这样):
SELECT a.*
FROM OPENROWSET(
BULK 'C:\mytest.dat',
FORMATFILE = 'C:\mytest.fmt') AS a
我得到的错误信息:
Msg 4838, Level 16, State 1, Line 2
The bulk data source does not support the SQLNUMERIC or SQLDECIMAL data types.
问题如何导入使用BCP导出的数字数据? 我可以控制此问题中显示的bcp命令,但不能控制表格定义。仅T-SQL解决方案是首选。
这是超级!它看起来很有希望! –