Рейтинг:
4
Adarsh chauhan
Здравствуйте brajunaresh,
Вы можете попробовать это...
declare @xmldata as xml
set @xmldata= (SELECT CONVERT(XML, BulkColumn) AS BulkColumn
FROM OPENROWSET(BULK 'D:\a.xml', SINGLE_BLOB)as X)
or
select @xmldata = CONVERT(XML, BulkColumn) FROM OPENROWSET(BULK 'D:\a.xml', SINGLE_BLOB)as X
счастливое кодирование :)
Рейтинг:
0
Aarti Meswania
DECLARE @xml xml
SET @xml = N'<Processes>
<Process> <UserID>PW-IT\10819420</UserID>
<MachineName>UTCIT-030</MachineName>
<Date>21-05-2013</Date>
<DocumentTitle>Importing XML file and insert data into SQL server table </DocumentTitle>
<ApplicationName> Windows Internet Explorer provided by Infotech Enterprises Limited</ApplicationName>
<StartTime>12:23</StartTime>
<EndTime>12:24</EndTime>
<Usage>1</Usage>
</Process></Processes> '
SELECT
doc.col.value('UserID[1]', 'nvarchar(10)') UserID
,doc.col.value('MachineName[1]', 'varchar(100)') MachineName
,doc.col.value('Date[1]', 'nvarchar(10)') Date
,doc.col.value('DocumentTitle[1]', 'nvarchar(10)') DocumentTitle
,doc.col.value('ApplicationName[1]', 'nvarchar(10)') ApplicationName
,doc.col.value('StartTime[1]', 'nvarchar(10)') StartTime
,doc.col.value('EndTime[1]', 'nvarchar(10)') EndTime
,doc.col.value('Usage[1]', 'nvarchar(10)') Usage
FROM @xml.nodes('/Processes/Process') doc(col)
Счастливого Кодирования!
:)
brajunaresh
привет Аати,
спасибо вам, но мне нужно передать локальный путь xml в запросе, тогда данные в xml будут вставлены в таблицу.
Выберите @xmlData = BulkColumn
ИЗ OPENROWSET
(Навальный 'D:\Process.xml',SINGLE_CLOB ) в качестве
Выберите UserID = a.value('(USERID/text())[1]','VARCHAR(100)'),
Machine_Name = a.value('(MAchineName/text())[1]','VARCHAR(100)'),
CurrentDate = a.value('(CurrentDate/text())[1]','VARCHAR(100)'),
Переменной documenttitle = а.значение('(переменной documenttitle/текст())[1]','типа varchar(100)')
от @данных XML.метод nodes('/процессов/процесса) х(а)
Aarti Meswania
вы посещали линк ?
http://www.mssqltips.com/sqlservertip/2899/importing-and-processing-data-from-xml-files-into-sql-server-tables/
brajunaresh
Привет Арти,
спасибо вам, он работает нормально, но в моем случае Process.xml у меня было много записей, которые можно напрямую загрузить в @XML, передав локальный путь к файлу
Aarti Meswania
ладно я не знаю но ты можешь просто поискать
"Как читать файл с помощью sql", а затем назначить файловые данные в переменной @xml
Member 11695004
можем ли мы вставить значение из параметра с помощью массовой вставки xml?
я хочу вставить все из xml и один столбец из параметра. для внешнего ключа предлагаю. могу я это сделать?