我刚刚在本地测试了一个TSQL脚本,该脚本将数据从XML文件导入到我的SQL表中。但是我突然有点懵逼,因为我不知道在哪里放置我的XML文件,以便将数据导入我的SQL Azure数据库。我已经搜索了一些谷歌资料,但找不到如何操作的方法。
是否有一种方法可以运行此SQL并将其加载到我的Azure数据库中?
注意:请注意下面这行代码:
BULK 'c:\Temp\abook.20130407.1912.xml',
它在我的本地电脑上。我不确定在哪里放置此文件以便将数据传输到Azure。
是否有一种方法可以运行此SQL并将其加载到我的Azure数据库中?
注意:请注意下面这行代码:
BULK 'c:\Temp\abook.20130407.1912.xml',
它在我的本地电脑上。我不确定在哪里放置此文件以便将数据传输到Azure。
SET IDENTITY_INSERT Contact ON
INSERT INTO Contact (ContactId, EntityId, Type, Value, Notes)
SELECT X.row.query('field[@name="id"]').value('.', 'INT'),
X.row.query('field[@name="recordid"]').value('.', 'INT'),
X.row.query('field[@name="type"]').value('.', 'VARCHAR(25)'),
X.row.query('field[@name="contact"]').value('.', 'VARCHAR(100)'),
X.row.query('field[@name="notes"]').value('.', 'NVARCHAR(255)')
FROM (
SELECT CAST(x AS XML)
FROM OPENROWSET(
BULK 'c:\Temp\abook.20130407.1912.xml',
SINGLE_BLOB) AS T(x)
) AS T(x)
CROSS APPLY x.nodes('/mysqldump/database/table_data[@name="contact"]/row') AS X(row);
SET IDENTITY_INSERT Contact OFF