Translate

Monday, 27 October 2014

Convert the XML to temp table using OPENXML in SQL Server

DECLARE @idoc int

DECLARE @doc varchar(1000)

SET @doc ='
<OutLookContact>
<Contact FirstName="Asif" LastName="Ghafoor" EmailAddress1="asifghafoor@my.web.pk" />
<Contact FirstName="Rameez" LastName="Ali" EmailAddress1="rameezali@my.web.pk" />
</OutLookContact>'

--Create an internal representation of the XML document.

EXEC sp_xml_preparedocument @idoc OUTPUT, @doc

-- Execute a SELECT statement that uses the OPENXML rowset provider.

DECLARE @Temp TABLE(FirstName VARCHAR(250),LastName VARCHAR(250),Email1 VARCHAR(250))  

INSERT INTO @Temp(FirstName,LastName,Email1)



SELECT *

FROM OPENXML (@idoc, '/OutLookContact/Contact',1)

WITH (FirstName varchar(50),LastName varchar(50),EmailAddress1 varchar(50))


select FirstName,LastName,Email1 from @Temp

Friday, 10 October 2014

How to make sql query result to xml file

Method 1:

SELECT *
FROM dbo.YourStudentTable
FOR XML PATH('Student'), ROOT ('Students')

Method 2:

DECLARE @x xml
SET @x=( SELECT *
FROM dbo.YourStudentTable  FOR XML RAW, TYPE,ROOT('myRoot'))
SELECT @x

Method 3:

SELECT * from  dbo.YourStudentTable
FOR XML RAW ('Employee'), ROOT ('Employees'), ELEMENTS XSINIL;





Wednesday, 1 October 2014

Listing all tables in a database and their row counts in SQL Server

CREATE TABLE #counts
(
    table_name varchar(255),
    row_count int
)

EXEC sp_MSForEachTable @command1='INSERT #counts (table_name, row_count) SELECT ''?'', COUNT(*) FROM ?'
SELECT table_name, row_count FROM #counts ORDER BY row_count DESC