Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

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²éѯÓï¾ä¾«»ªÊ¹ÓüòÒª

Ò»¡¢ ¼òµ¥²éѯ
¼òµ¥µÄTransact-SQL²éѯֻ°üÀ¨Ñ¡ÔñÁÐ±í¡¢from×Ó¾äºÍWHERE×Ӿ䡣ËüÃÇ·Ö±ð˵Ã÷Ëù²éѯÁС¢²éѯµÄ
±í»òÊÓͼ¡¢ÒÔ¼°ËÑË÷Ìõ¼þµÈ¡£
ÀýÈ磬ÏÂÃæµÄÓï¾ä²éѯtesttable±íÖÐÐÕÃûΪ“ÕÅÈý”µÄnickname×ֶκÍemail×ֶΡ£
SELECT nickname,email
from testtable
WHERE name='ÕÅÈý'
(Ò») Ñ¡ÔñÁбí
Ñ¡ÔñÁбí ......

Load/Unload XML data in DB2

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. ......

SQLÓï¾ä ÁªºÏ²éѯ»¹ÊÇÔÚ²éѯ½á¹ûÖÐǶÌ×

TABLE MASTER   ×Ö¶Î ID DETAIL.....
TABLE BIZ   ×Ö¶Î SYS_ID  CODE_ID .......
²éѯʱÐèÒªµÄÊÇIDµÄÃèÊö
1,SELECT A.SYS_ID,A.CODE_ID,B.DETAIL,C.DETAIL...... from BIZ A,MASTER B,MASTER C WHERE A.SYS_ID=B.ID AND A.CODE_ID=C.ID
2,SELECT SYS_ID,(SELECT DETAIL from MASTER ......

SQL¼¶Áª¸üкͼ¶ÁªÉ¾³ý

alter table ±íÃû
add constraint Ô¼ÊøÃû
foreign key(×Ö¶ÎÃû) references Ö÷±íÃû(×Ö¶ÎÃû)
on delete cascade
Óï·¨£º
Foreign Key
(column[,...n])
references referenced_table_name[(ref_column[,...n])]
[on delete cascade]
[on update cascade]
×¢ÊÍ£º
column:ÁÐÃû
referenced_table_name:Íâ¼ü²Î¿¼µÄÖ÷¼ü± ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ