بارها قصد ارسال اطلاعات با تعداد رکوردهای بالا را به SQL را داشته اید. برای این منظور یا باید به صورت رکورد، رکورد ارسال اطلاعات نمایید که مشکلات فراوانی مثل سرعت انتقال اطلاعات و هندل کردن قطعی سیستم در حال ارسال و غیره وجود دارد. برای حل این موضوع پیشنهاد میشود از ارسال اطلاعات از طریق XML اقدام نمایید و اطلاعات را در سمت SQL ارسال و یا تغییر دهید.
برای این منظور یک string به صورت زیر در محیط نرم افزار ایجاد میشود و در سمت SQL هم پراسیجری با ورودی Text ایجاد میشود و سپس از طریق دستورات زیر میتوانید Tableمعادل XML ارسالی را دریافت نمایید.
DECLARE @xml xml
SET @xml = N'<polist> <po ponumber="100" podate="2008-09-10" /> <po ponumber="101" podate="2008-09-11" /> </polist>' SELECT doc.col.value('@ponumber', 'nvarchar(10)') ponumber ,doc.col.value('@podate', 'datetime') podate FROM @xml.nodes('/polist/po') doc(col)