SQL 2005ÖÐÓÃXML nodes()º¯ÊýÈ¡´úOPENXML
SQL Server 2005ΪXMLÌṩ±¾µØÖ§³Ö;ÏÖÔÚ¿ÉÒÔÔÚOPENXML½ÚµãÖÐʹÓÃÒ»¸ö´øÓÐnodes()º¯ÊýµÄXML×Ö¶ÎÀàÐͰÑÒ»¸öXMLÎļþת»¯ÎªÒ»¸öÐм¯¡£ÈÃÎÒÃÇÀ´¿´Ò»¸öʹÓÃOPENXMLµÄ¼òµ¥Àý×Ó£¬²¢ÏÔʾÈçºÎ°ÑËüת»¯ÎªÔÚSQL Server 2005ÖÐʹÓÃXML×Ö¶ÎÀàÐͺÍnodes()º¯Êý¡£
¡¡¡¡ÎªÁËʹÎÒÃǵÄÀý×Ó¼òµ¥»¯£¬ÎÒÃǽ«¼ÙÉèÎÒÃÇÐèÒªÖ´ÐÐijÖÖ»ùÓڲɹº¶©µ¥ÁбíµÄ¹ý³Ì£¬¶øÕâ¸ö²É¹º¶©µ¥½«ÔÚÒ»¸öXMLÎļþÖÐÖ¸¶¨¡£¸ÃXMLÎļþÀàËÆÓÚÕâÑù£º
¡¡¡¡ < polist>
¡¡¡¡< po>< ponumber>100< /ponumber>< podate>2008-09-10< /podate>< /po>
¡¡¡¡< po>< ponumber>101< /ponumber>< podate>2008-09-11< /podate>< /po>
¡¡¡¡< /polist>
¡¡¡¡ÎÒÃÇ¿ÉÒÔͨ¹ýÏÂÃæµÄOPENXML°Ñ XMLת»¯ÎªÒ»¸öÐм¯£º
¡¡¡¡ DECLARE @DocHandle int
¡¡¡¡DECLARE @XmlDocument nvarchar(1000)
¡¡¡¡SET @XmlDocument = N''< polist>
¡¡¡¡< po>< ponumber>100< /ponumber>< podate>2008-09-10< /podate>< /po>
¡¡¡¡< po>< ponumber>101< /ponumber>< podate>2008-09-11< /podate>< /po>
¡¡¡¡< /polist>''
¡¡¡¡EXEC sp_xml_preparedocument @DocHandle OUTPUT, @XmlDocument
¡¡¡¡SELECT * from OPENXML (@DocHandle, ''/polist/po'',2)
¡¡¡¡WITH (ponumber nvarchar(10),
¡¡¡¡podate datetime)
¡¡¡¡EXEC sp_xml_removedocument @DocHandle
¡¡¡¡ÏÂÃæÊÇÖ´ÐÐÒÔÉÏ´úÂë¶ÎµÃµ½µÄÐм¯£º
¡¡¡¡
¡¡¡¡Í¼Ò»
¡¡¡¡ÕâÊÇ´ÓÉÏÃæ´úÂë¶ÎµÃµ½µÄÒªµã£º
¡¡¡¡Ê¹ÓÃOPENXMLµÄµÚÒ»²½ÊÇͨ¹ý·ÃÎʸô洢¹ý³Ìsp_xml_preparedocumentÀ´"×¼±¸"XMLÎļþ£¬¸Ã´æ´¢¹ý³Ì½«·µ»ØÒ»¸öÈ·ÈÏ×¼±¸ºÃµÄXMLµÄÕûÊý¡£
¡¡¡¡OPENXMLÊÇÒ»¸öÐм¯ÌṩÕߣ¬ÕâÒâζ×ÅÈç¹ûËüÊÇÒ»ÕÅ±í£¬ÄÇôÄãͬÑù¿ÉÒÔʹÓÃËü¡£±¾ÖÊÉÏËüÊÇÒ»¸ö´øÓвÎÊýµÄº¯Êý£¬ÕâЩ²ÎÊý½«È·¶¨¸Ã´ÓXMLÎļþÖÐÌáȡʲô¡£
¡¡¡¡Ê¹ÓÃOPENXMLµÄ×îºó²½ÖèÊÇͨ¹ý·ÃÎÊ´æ´¢¹ý³Ìsp_xml_removedocumentÀ´"ÊÍ·Å"×¼±¸ºÃµÄXMLÎļþ¡£
ÉÏÃæµÄxml´æ´¢¹ý³ÌʹÓù²Í¬µÄMSXML½âÎö×é¼þ¡£
¡¡¡¡sp_xml_preparedocument´æ´¢¹ý³Ì°Ñ×¼±¸ºÃµÄXMLÎļþ´æ´¢ÔÚSQL ServerµÄÄÚ²¿¸ßËÙ»º´æÖС£·ÃÎÊsp_xml_removedocument´æ´¢¹ý³ÌÊǺÜÓбØÒªµÄ£¬ÕâÊÇΪÁ˰Ñ×¼±¸ºÃµÄXMLÎļþ´Ó¸ßËÙ»º´æÖÐÏû³ý¡£¸ù¾ÝSQL Server 2005Áª»ú°ïÖú£¬Äܹ»ÓÃÓÚSQL ServerµÄ°Ë·ÖÖ®Ò»×ÜÄÚ´æ¿ÉÒÔÓÃÓÚMSX
Ïà¹ØÎĵµ£º
sql server 2008 bcp ÅúÁ¿¸´ÖƳÌÐò ³ö´í
C:\Documents and Settings>bcp MSPetShop4.dbo.product out c:\1.txt -T
SQLState = 08001, NativeError = -1
Error = [Microsoft][SQL Native Client]SQL ÍøÂç½Ó¿Ú: ¶¨Î»Ö¸¶¨µÄ Server/Instance
ʱ³ö´í [xFFFFFFFF].
SQLState = HYT00, NativeError = 0
Error = [Micros ......
<
<
СÓÚ
>
>
´óÓÚ
&
&
ºÍºÅ
'
'
µ¥ÒýºÅ
"
"
ÒýºÅ
×¢ÊÍ£ºÔÚ XML ÖУ¬Ö»ÓÐ×Ö·û "<" ºÍ "&" ȷʵÊÇ·Ç·¨µÄ¡£´óÓÚºÅÊǺϷ¨µÄ£¬µ«ÊÇÓÃʵÌåÒýÓÃÀ´´úÌæËüÊÇÒ»¸öºÃϰ¹ß¡£ ......
//ÕâÊÇÌí¼Ó
private void button1_Click(object sender, EventArgs e)
{
string s = "Persist Security Info=False;Integrated Security=SSPI;database=IIntegration;server=(local)";
&n ......
If XML data in the table is less than 32K for each record, then you can directly unload the data as char. If XML data exceeds 32K for some records, then you have to unload the common data and the XML data separately. First, create a template for unloading XML into a PDS: TEMPLATE LOBFRV DSN 'AAA. ......
selectÓï¾äÖÐÖ»ÄÜʹÓÃsqlº¯Êý¶Ô×ֶνøÐвÙ×÷£¨Á´½Ósql server£©£¬
select ×Ö¶Î1 from ±í1 where ×Ö¶Î1.IndexOf("ÔÆ")=1;
ÕâÌõÓï¾ä²»¶ÔµÄÔÒòÊÇindexof£¨£©º¯Êý²»ÊÇsqlº¯Êý£¬¸Ä³Ésql¶ÔÓ¦µÄº¯Êý¾Í¿ÉÒÔÁË¡£
left£¨£©ÊÇsqlº¯Êý¡£
select ×Ö¶Î1 from ±í1 where charindex£¨'ÔÆ',×Ö¶Î1£©=1;
×Ö·û´®º¯Êý¶Ô¶þ½øÖÆÊý¾Ý¡¢×Ö·û´®º ......