将数据从SQLEXPRESS本地数据库迁移到SQL Azure

我有一个从CSV文件导入数据到本地SQL Express数据库的过程,然后我可以使用SQL Server 2012迁移工具将数据库迁移到SQL Azure(如http://bit.ly/WRPSZs中所述 )。 这对移动数据库非常有用。

但是,当数据发生变化,我只是想简化数据库,这有点痛苦。 我试图改变我的脚本,只是连接到SQL Azure数据库,但遇到了SQL Azure显然不支持BCP的问题:

Msg 40526, Level 16, State 1, Server Xxxxxx, Line 37 'BULK' rowset provider not supported in this version of SQL Server. 

所以我回到导入到SQL Express,然后删除数据库,从SQL Express中导出,然后去重新创build数据库用户和angular色。

任何人有更好的方法?

根据Azure文档,您应该能够使用BCP命令导入数据。 请参阅: BCP和SQL Azure

为了确认它在工作,我也去testing了一下。 对于我的testing,我从csv文件中插入了10行数据,名为import.txt 。 我用-t,语法来指定它是逗号分隔的。

以下是我使用的命令的(redacted)语法:

 bcp database_name.schema.table in C:\import.txt -c -U username@servername -S servername.database.windows.net -P password -t, 

从这里我可以看到以下结果

 Starting copy... 10 rows copied. Network packet size (bytes): 4096 Clock Time (ms.) Total : 390 Average : (25.64 rows per sec.) 

我已经看到了一些插入大量数据的情况,导致导入失败,但这可能是一个不同于你所看到的错误。