¹Ì´ÏÀÇ XML DeveloperGroup
 
LOG-IN
ID
PASSWORD
¢º XML°­ÁÂ
¢º ±âŸ°­ÁÂ
¢º ÀÚ·á¸ðÀ½
 
¢º Q&A
¢º ¹æ¸í·Ï
¢º ¸Þ´º¾ó
¢º ¹Ì´Ïű×
¢º ¿¡ÀÌÀüÆ®¿Õ
¢º RSSnym
¢º ¹Ì´Ï¸Ê
¢º ¹Ì´Ï°Ë»ö


2.3 ÅÛÇø´ ÆÄÀÏ ½ÇÇà
¹Ì´Ï  2004-12-02 22:02:01, VIEW : 8,122


3. ÅÛÇø´ ÆÄÀÏ ½ÇÇà

Áö³­ °­Á¿¡¼­ MSSQL¿¡¼­ÀÇ URL·Î ÁúÀǾ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº¸¾Ò½À´Ï´Ù.



Áö³­ °­ÁÂó·³ ¸¸¾à »ç¿ëÀÚ¿¡°Ô ÁÖ¼Ò ÀÔ·Ââ¿¡ ±×·¸°Ô ±ä SQL Äõ¸®¸¦ ³ÖÀ¸¶ó°í Çϸé

¾Æ¹«µµ »ç¿ëÇÏÁö ¾Ê´Â »çÀÌÆ®°¡ µÉ °Ì´Ï´Ù.



±×·¡¼­ ´ë¾ÈÀ¸·Î ÀúÀå ÇÁ·Î½ÃÀú¶ó´Â °É ÀÌ¿ëÇÑ ¹æ¹ýÀ» Áö³­¹ø¿¡ Àá±ñ ¾Ë¾ÆºÃ¾úÁÒ..

¿À´ÃÀº °Å±â¿¡¼­ ¾ð±ÞÇÑ ¶Ç´Ù¸¥ ¹æ½ÄÀÎ ÅÛÇø´À̶ó´Â °Í¿¡ ´ëÇÑ °­Á¸¦ ÁøÇàÇϰڽÀ´Ï´Ù.



ÇÁ·Î±×·¥À» ÇÏ´Ùº¸¸é ÅÛÇø´À̶õ ¸»Àº Âü ¸¹ÀÌ »ç¿ëµÇ´Â °Í °°½À´Ï´Ù.

¿ø·¡ ÅÛÇø´(Template)ÀÇ Àǹ̴ º»¶ß´Â °ø±¸³ª ÇüÆÇ °°Àº °ÍÀ» ÀǹÌÇÕ´Ï´Ù.

¹Ì¸® ¸ð¾çÀ» ¸¸µé¾î ³õ°í °Å±â¿¡ ³»¿ë¹°À» ³ÖÀ¸¸é »õ·Î¿î °ÍÀÌ ¸¸µé¾î Áö´Â °ÍÀÌÁö¿ä..



ÇÁ·Î±×·¥¿¡¼­µµ ºñ½ÁÇÏ°Ô »ç¿ëµÈ´Ù°í º¼ ¼ö ÀÖÁÒ.. ÀÏÁ¤ÇÑ Æ²À» Á¤Çسõ°í

°è¼ÓÀûÀ¸·Î °¡Á®´Ù°¡ »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ±×ÃÝ..

ÀÏÁ¤ÇÑ Æ²À̶ó.. MSSQL¿¡¼­ ÀÏÁ¤ÇÑ Æ²À̶ó¸é ¹«¾ùÀϱî¿ä?



±×°Ç ¹Ù·Î SQL¹®À̶ó°í »ý°¢ÇÒ ¼ö ÀÖ°ÚÁÒ..

¿ì¸®°¡ Áö³­ °­Á¿¡¼­ URL¿¡ ±æ°Ô ÀÔ·ÂÇß´ø SQL¹®À» ÅÛÇø´ ÆÄÀÏ ¾È¿¡ ³ÖÀ¸¸é µÇ°ÚÁÒ.

±âº» ¹ß»óÀº °£´ÜÇϳ׿ä. ±×·¸ÁÒ. ¾Æ¹«¸® º¹ÀâÇÑ °Íµµ °á±¹ ¾ÆÁÖ °£´ÜÇÑ °ÍºÎÅÍ ½ÃÀÛÇÏÀݾƿä..

ÄÄÇ»ÅͰ¡ ¾ÆÁÖ º¹ÀâÇÏ°í ¿À·£ ½Ã°£ÀÌ °É¸®´Â ¿¬»êÀ» ¼öÇàÇÑ´Ù°í ÇÏ´õ¶óµµ

±×°ÍÀº 010101ÀÇ Á¶ÇÕµÈ ¿¬»ê¿¡¼­ºÎÅÍ ½ÃÀÛÇÏÀݾƿä..



¿¨!! ±×°Ô Áö±Ý À̰Ŷû ¹«½¼»ó°üÀÌÁö T__T;;



ÅÛÇø´ »ç¿ëÀÇ ÀåÁ¡



±×·¸´Ù¸é ÅÛÇø´À» »ç¿ëÇÏ¸é ¹«½¼ ÀåÁ¡ÀÌ ÀÖÀ»±î¿ä?

Books Online¿¡ ´ÙÀ½°ú °°Àº ÀåÁ¡ÀÌ ³ª¿Í ÀÖ½À´Ï´Ù.

(Âü°í·Î MSSQL 2000 ÇÑ±ÛÆÇ¿¡¼­´Â ¿Â¶óÀÎ ¼³¸í¼­¶ó°í Çϳ׿ä.)



- SQL Äõ¸® ¶Ç´Â XPath Äõ¸®¸¦ ÁöÁ¤ÇÕ´Ï´Ù.

- ÅÛÇø´ ½ÇÇà°á°ú¸¦ À¯È¿ÇÑ XML ¹®¼­·Î ¸¸µì´Ï´Ù.

- SQL¹®À̳ª XPath Äõ¸®¿¡ Àü´ÞÇÒ ¼ö ÀÖ´Â ¸Å°³º¯¼ö¸¦ Á¤ÀÇÇÕ´Ï´Ù.

- À̸§ °ø°£À» ¼±¾ðÇÕ´Ï´Ù.

- XSL ½ºÅ¸ÀÏ ½ÃÆ®¸¦ °á°ú ¹®¼­¿¡ Àû¿ëÇϵµ·Ï ÁöÁ¤ÇÕ´Ï´Ù.

- º¸¾ÈÀ» Çâ»ó ½Ãŵ´Ï´Ù.



ÀÌ·± ÀåÁ¡ÀÌ ÀÖ´Ù´Â ±º¿ä.. ¹«½¼ ¼Ò¸°Áö´Â ¾Æ·¡ÀÇ ¿¹Á¦µéÀ» ÅëÇØ¼­ ´À³¢½Ã±æ ¹Ù¶ø´Ï´Ù.



ÅÛÇø´ ¹®¼­ÀÇ ±¸¼º



ÅÛÇø´ ¹®¼­´Â ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ÀÌ·ç¾îÁ® ÀÖ½À´Ï´Ù.

  <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"

            sql:xsl="XSL ÆÄÀϸí">

   <sql:header>

         <sql:param>..</sql:param>

         <sql:param>..</sql:param>...n

   </sql:header>

   <sql:query>

       SQL ¹®Àå

   </sql:query>

   <sql:xpath-query mapping-schema="½ºÅ°¸¶ ÆÄÀϸí">

       XPath Äõ¸®

   </sql:xpath-query>

</ROOT>





±âº»ÀûÀÎ XML ¹®¼­ÀÇ Çü½ÄÀ» °¡Áö°í Àֳ׿ä.. Çϳª¾¿ »ìÆìº¸µµ·Ï ÇÒ±î¿ä?

<ROOT>´Â ÀϹÝÀûÀÎ ·çÆ® ¿¤¸®¸ÕÆ®¶ó°í »ý°¢ÇÏ¸é µË´Ï´Ù. °è¼Ó ³ª¿À³×¿ä..

·çÆ® ¿¤¸®¸ÕÆ® ÀÌÁ¦´Â ¹«¾ùÀÎÁö °¨ÀÌ ¿Ã°Ì´Ï´Ù.



¿ì¸®°¡ Áö³­ °­ÁÂÀÇ URL Äõ¸®¿¡¼­ ³¡ºÎºÐ¿¡ root=ROOT¶ó°í »ç¿ëÇß´ø ºÎºÐÀÌ »ý°¢³ª³ª¿ä?

¹Ù·Î ±×ºÎºÐÀÌ ÀÌ°É·Î ÇØ°áµË´Ï´Ù. À§ÀÇ ÀåÁ¡¿¡ µÎ ¹øÂ° À¯È¿ÇÑ XML ¹®¼­¸¦ ¸¸µç´Ù´Â °ÍÀº

À̰ÍÀ» ÀǹÌÇÏ´Â °ÍÀÔ´Ï´Ù.



¿ì¸®°¡Å×½ºÆ®µµ ÇØºÃÁö¸¸ °á°ú°¡ ¿©·¯ ¿¤¸®¸ÕÆ®·Î ³ª¿Ã °æ¿ì¿¡

root=ROOT¸¦ »ý·«ÇÏ¸é ¹®Á¦°¡ ¹ß»ýÇß¾úÁÒ. ±×°ÍÀÌ ¾ø¾îÁø °Ì´Ï´Ù.

<ROOT>°¡ ¾Æ´Ñ ´Ù¸¥ À̸§À¸·Î »ç¿ëÇϼŵµ µË´Ï´Ù.

¿¹¸¦ µé¾î <computer> ÀÌ·± ½ÄÀ¸·Îµµ »ç¿ëÇÒ ¼ö ÀÖÁÒ.



±×·±µ¥ ¼Ó¼ºÀ¸·Î µÎ°¡Áö°¡ »ç¿ëµÇ°í ÀÖ½À´Ï´Ù. Çϳª´Â

xmlns:sql="urn:schemas-microsoft-com:xml-sql"



¹Ù·Î NameSpace ¶ó´Â °ÍÀ» Á¤ÀÇÇϰí Àִµ¥¿ä.

¿©±â¿¡¼­ º¸¸é sqlÀ̶ó´Â namespace¸¦ Á¤ÀÇÇϰí ÀÖ´Â °Ì´Ï´Ù.

±×·¡¼­ÀÎÁö ÀÚ½Ä ¿¤¸®¸ÕÆ®µéÀ» º¸¸é sql:~~ ÀÌ·±½ÄÀ¸·Î »ç¿ëÇϰí ÀÖÁÒ..



NameSpace´Â À¥»ó¿¡¼­ °°Àº XML űװ¡ »ç¿ëµÉ °æ¿ì ±×°ÍÀ» ±¸ºÐÇϱâ À§Çؼ­

»ç¿ëµÈ´Ù°í ÇÏ¿´Áö¿ä. ¹Ù·Î MSSQL°ú °ü·ÃµÈ ű×ÀÇ namespace´Â

urn:schemas-microsoft-com:xml-sql À̰Ŷó´Â °ÍÀÌÁö¿ä.



µÎ ¹øÂ° ¼Ó¼ºÀÌ ¹Ù·Î XSLÀ» ÁöÁ¤ÇÏ´Â °ÍÀÔ´Ï´Ù.

Áï, °á°ú¹®¼­¸¦ ÀÏÁ¤ÇÑ Æ÷¸ËÀ¸·Î º¸°í ½Í´Ù¸é ¿©±â¿¡ XSL ¹®¼­¸¦ ÁöÁ¤ÇÏ¸é µÇÁö¿ä.



À̾ ·çÆ® ¿¤¸®¸ÕÆ®ÀÇ ÀÚ½ÄÀ¸·Î ¼¼°¡Áö°¡ ³ª¿É´Ï´Ù.

ÀÌ ¼¼ °³ÀÇ ¿¤¸®¸ÕÆ®´Â °¢°¢ »ý·«µÇ¾îµµ ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù.

Çϳª¾¿ »ìÆìº¸µµ·Ï ÇÏÁÒ.

     <sql:header>

         <sql:param>..</sql:param>

         <sql:param>..</sql:param>...n

   </sql:header>





Çì´õ¶õ ¸»ÀÌ Âü ¸¹ÀÌ ¾²À̳׿ä. Áï ³»¿ëÀº ¾Æ´Ï¶õ ¾ê±â³×¿ä.. ±×·³ ¹»±î¿ä?

<header>ű×ÀÇ ÀÚ½ÄÀ» º¸¸é <param>À̶õ űװ¡ »ç¿ëµÇ³×¿ä. ¹Ù·Î ÆÄ¶ó¹ÌÅÍ, ¸Å°³º¯¼öÀÔ´Ï´Ù.



ÀúÀå ÇÁ·Î½ÃÀú¿¡¼­µµ ¸Å°³º¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

±×·¯³ª SQLÀÇ ÀúÀå ÇÁ·Î½ÃÀúÀÇ ¸Å°³º¯¼ö ¼±¾ð ¹æ¹ýÀ» ¾Ë¾Æ¾ß Çß½À´Ï´Ù.

ÇÏÁö¸¸ ÅÛÇø´Àº ÀÚü¿¡¼­´Â ű׷Π¸Å°³º¯¼ö¸¦ Áö¿øÇÏÁÒ.. »ç¿ë¹ýÀº ¾Æ·¡¿¡¼­ ¼³¸íÇÒ²²¿ä..

     <sql:query>

       SQL ¹®Àå

   </sql:query>





ÀÌ°Ç Äõ¸®³×¿ä.. ¿ì¸®°¡ ÁúÀǾ ´øÁú SQL¹®À» ¿©±â¿¡ ³Ö¾î ÁÖ¸é µË´Ï´Ù.



¸¶Âù°¡Áö·Î ´ÙÀ½Àº

     <sql:xpath-query mapping-schema="½ºÅ°¸¶ ÆÄÀϸí">

       XPath Äõ¸®

   </sql:xpath-query>





XPath Äõ¸®ÀÔ´Ï´Ù. ÀÌ °æ¿ì´Â ¸ÅÇÎ ½ºÅ°¸¶¶ó´Â °ÍÀÌ ÇÔ²² µ¿¹ÝµÇ¾î¾ß ÇÕ´Ï´Ù.

XPath Äõ¸®´Â DB°¡ ¾Æ´Ï¶ó XML ¹®¼­¿¡ ÁúÀǾ ´øÁö´Â °ÍÀÔ´Ï´Ù.



±×·¸´Ù¸é DB¿¡¼­ °á°ú¸¦ °¡Á®¿Í¼­ XML ¹®¼­·Î ÀÏ´Ü ¸¸µé¾î¾ß ÇÏÀݾƿä..

ÀÌ°É ½ºÅ°¸¶°¡ ó¸®ÇØ ÁÖ´Â °Ì´Ï´Ù.

±×¸®°í XPath Äõ¸®¸¦ ½ºÅ°¸¶°¡ ó¸®ÇÑ °á°ú¿¡ ´øÁö¸é »õ·Î¿î XML ¹®¼­°¡ ³ª¿À´Â °ÍÀÌÁö¿ä.

XPath Äõ¸®¿¡ ´ëÇØ¼­´Â ´ÙÀ½ °­Á·Π½ºÅ°¸¶¸¦ ¾Ë¾Æº¸±¸¿ä.. Çϵµ·Ï ÇÏÁÒ..



±âº»ÀûÀÎ »çÇ×À» ¼³¸íÇÏ¿´½À´Ï´Ù. ±×·³ ÅÛÇø´ÀÇ ¿¹Á¦¸¦ ÇØº¸µµ·Ï ÇÏÁÒ.

¿©·¯ºÐÀÇ Çϵåµð½ºÅ©ÀÇ mini¶õ µð·ºÅ丮¿¡ °¡º¸¸é ÇÏÀ§¿¡

template¶õ µð·ºÅ丮¸¦ ¸¸µç°É º¼¼ö ÀÖÀ» °Ì´Ï´Ù.



¾Æ·¡ ¿¹Á¦¸¦ ¿©·¯ºÐÀÇ PC¿¡¼­ ½ÇÇàÇØ º¸·Á¸é ÀÚ·á¸ðÀ½¿¡¼­ ÇØ´ç ¼Ò½º¸¦ ¹Þ¾Æ¼­

template µð·ºÅ丮¿¡ ¾ÐÃàÀ» Ç®¾î ÁÖ¸é µË´Ï´Ù.



ÅÛÇø´À» ÀÌ¿ëÇÑ SQL Äõ¸® ½ÇÇà



¸ÕÀú ¾ÆÁÖ ´Ü¼øÇÑ °ÍºÎÅÍ ÇØº¸µµ·Ï ÇÏÁÒ.

- Customers Å×ÀÌºí¿¡¼­ °í°´ ¾ÆÀ̵ð¿Í ȸ»ç¸íÀ» ·¹Äڵ常 °¡Á®¿Í¶ó

  SELECT  top 2 CustomerID, CompanyName

FROM     Customers

FOR XML AUTO





Äõ¸® ºÐ¼®±â¿¡¼­ À§¿Í °°ÀÌ ÀÔ·ÂÇÏ¸é µË´Ï´Ù. À̰ÍÀ» ÅÛÇø´À¸·Î ¸¸µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.



ÆÄÀϸí : SQLQuery1.xml <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">

    <sql:query>

        SELECT  top 2 CustomerID, CompanyName

        FROM     Customers

        FOR XML AUTO

    </sql:query>

</ROOT>





Áï, À§¿¡¼­ º¸¿©ÁØ ±âº»ÇüÅ¿¡ SQL ¹®À常 ³ÖÀ¸¸é µÈ´Ù´Â °ÍÀÔ´Ï´Ù.

±×·³. ½ÇÇàÀº ¾î¶»°Ô ÇÒ ¼ö ÀÖÀ»±î¿ä?



http://localhost/mini/template/SQLQuery1.xml



xmlis.pe.krÀº IIS ¼­¹ö À̸§À̰í¿ä. mini´Â ¿ì¸®°¡ ÀÛ¼ºÇÑ °¡»óµð·ºÅ丮 À̸§ÀÔ´Ï´Ù.

template´Â IIS °¡»ó µð·ºÅ丮 °ü¸® À¯Æ¿¸®Æ¼¿¡¼­ ÀÛ¼ºÇÑ ÅÛÇø´À» ÀúÀåÇÏ´Â °¡»óÀ̸§ÀÔ´Ï´Ù.



¿ì¸®´Â ÀÌ °¡»óÀ̸§À» template¶ó°í ÇÏ¿´°í¿ä. ½ÇÁ¦ µð·ºÅ丮µµ mini\template·Î ÇÏ¿´Áö¿ä..

¸¸¾à °¡»óÀ̸§À» ´Ù¸£°Ô ÇÏ¿´´Ù¸é À§ÀÇ template¸¦ º¯°æÇÏ¸é µË´Ï´Ù.



¾î¶°Å³ª.. Áö³­¹ø¿¡ URLÄõ¸®¿¡ ºñÇØ¼­ ÈξÀ °£°áÇÏÁÒ..

À̹ø¿¡ Á» ´Ù¸¥°É ÇØº¸µµ·Ï ÇÏÁÒ..



- Order Details Å×ÀÌºí¿¡¼­ UnitPrice°¡ 10º¸´Ù Å« °ÍÀ» °¡Á®¿Í¶ó

  SELECT top 2 *

FROM [Order Details]

WHERE UnitPrice > 10

FOR XML AUTO





À§Ã³·³ »ç¿ëÇÏ¸é µÇ°ÚÁö¿ä.. ÅÛÇø´À¸·Î ¸¸µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.



ÆÄÀϸí : SQLQuery2.xml <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">

    <sql:query>

         SELECT top 2 *

         FROM [Order Details]

         WHERE UnitPrice > 10

         FOR XML AUTO

    </sql:query>

</ROOT>





À§ÀÇ ¹®ÀåÀ» ÇÔ ½ÇÇàÇØ º¼±î¿ä?



http://localhost/mini/template/SQLQuery2.xml



¹®Á¦°¡ ¾øÀÌ ½ÇÇàµË´Ï´Ù. ±×·¯³ª À§ ÅÛÇø´ ÆÄÀÏÀº Áß¿äÇÑ XMLÀÇ ±ÔÄ¢À» ¾î±â°í ÀÖ½À´Ï´Ù.

¹Ù·Î WHERE UnitPrice > 10 ÀÌ ºÎºÐÀÔ´Ï´Ù. > ±âÈ£´Â XML¿¡¼­ »ç¿ëµÇ´Â Ư¼ö¹®ÀÚÀÔ´Ï´Ù.

Áï, »ç¿ëÇÒ ¼ö°¡ ¾ø½À´Ï´Ù. ÀÌ·± °ÍÀº ¿£ÅÍÆ¼ ÂüÁ¶·Î º¸Åë ³ªÅ¸³»Áö¿ä.. HTML¿¡¼­µµ ±×·¸°Ô ÇÕ´Ï´Ù.



>·Î ³ªÅ¸³»¾ß ÇÏÁö¿ä..

Áï, À§ ¹®Àå¿¡ ´ëÇÑ Á¤È®ÇÑ Ç¥ÇöÀº ´ÙÀ½°ú °°½À´Ï´Ù.



ÆÄÀϸí : SQLQuery3.xml <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">

    <sql:query>

         SELECT  top 2 *

         FROM    [Order Details]

         WHERE  UnitPrice > 10

         FOR XML AUTO

    </sql:query>

</ROOT>





http://localhost/mini/template/SQLQuery3.xml



°á°ú´Â °°½À´Ï´Ù. ù ¹øÂ° °æ¿ìµµ XMLÀÌ ÇØ¼®ÇÒ ¼ö ÀÖµµ·Ï MSSQL¿¡¼­ Áö¿øÇÏ´Â µí ÇÕ´Ï´Ù.

ÇÏÁö¸¸ º¸´Ù XML ´ä°Ô »ç¿ëÇÏ·Á¸é µÎ ¹øÂ° ó·³ »ç¿ëÇÏ¼Å¾ß ÇÕ´Ï´Ù.



´ÙÀ½À¸·Î ÅÛÇø´¿¡¼­´Â ÀúÀåÇÁ·Î½ÃÀú¸¦ »ç¿ëÇÒ ¼ö ¾øÀ»±î¿ä?

ÀúÀå ÇÁ·Î½ÃÀúÀÇ ÀåÁ¡À» ¾à°£ ¼³¸íÇÑ ÀûÀÌ ÀÖ½À´Ï´Ù.

ºÐ¸íÈ÷ ÀúÀå ÇÁ·Î½ÃÀú´Â ¼Óµµ³ª ¼º´É¸é¿¡¼­ À¯¸®ÇÑ Á¡ÀÌ ÀÖ½À´Ï´Ù.

±×°É ÅÛÇø´¿¡¼­ »ç¿ëÇÏ·Á¸é ¹Ù·Î SQL ¹®ÀåÀÌ µé¾î°¡´Â ÀÚ¸®¿¡



EXEC ÀúÀåÇÁ·Î½ÃÀú¸í



ÇÏ°í »ç¿ëÇÏ¸é µË´Ï´Ù.

Áö³­ °­Á¿¡ ¸¸µç CategoryInfo ÀúÀå ÇÁ·Î½ÃÀú¸¦ Çѹø ºÒ·¯º¸±â·Î ÇϰڽÀ´Ï´Ù.

ÅÛÇø´Àº ´ÙÀ½°ú °°½À´Ï´Ù.



ÆÄÀϸí : SQLQuery4.xml <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">

    <sql:query>

         EXEC CategoryInfo

    </sql:query>

</ROOT>





http://localhost/mini/template/SQLQuery4.xml



URL Äõ¸®¿Í °°Àº °á°ú¸¦ °¡Á®¿É´Ï´Ù. È®ÀÎÇØ º¸½ÃÁÒ...



http://localhost/mini?sql=EXEC+CategoryInfo&root=ROOT



Âü°í·Î URLÄõ¸®Ã³·³ URL¿¡ ÅÛÇø´À» Á÷Á¢ ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

±×·¯¸é ´Ü¼øÇÑ URLÄõ¸®º¸´Ù ´õ ±æ¾îÁö°ÚÁÒ...



ÅÛÇø´¿¡ ¸Å°³º¯¼ö ÁöÁ¤



À̹ø¿¡´Â ÅÛÇø´¿¡ ¸Å°³º¯¼ö¸¦ ÁöÁ¤ÇÏ´Â °Í¿¡ ´ëÇØ¼­ ¾Ë¾Æº¸µµ·Ï ÇϰڽÀ´Ï´Ù.

¸ÕÀú ÀúÀå ÇÁ·Î½ÃÀú¸¦ Çϳª ¸¸µé¾î º¸°Ú½À´Ï´Ù. ¿©·¯ºÐµµ Äõ¸® ºÐ¼®±â¿¡¼­ ½ÇÇàÇØ º¸¼¼¿ä..

  CREATE PROC CategoryInfoWithTemplate

                        @CategoryName varchar(35)

AS

      SELECT  CategoryName, Description

      FROM     Categories

      WHERE   Categories.CategoryName = @CategoryName

      FOR XML AUTO





À§ ÇÁ·Î½ÃÀú´Â Ä«Å×°í¸®¸íÀ» ¸Å°³º¯¼ö·Î ¹Þ¾Æ¼­ °°Àº Ä«Å×°í¸®ÀÇ À̸§°ú ¼³¸íÀ» Ãâ·ÂÇϰí ÀÕ½À´Ï´Ù.

ÀÌ·±ÇÑ °æ¿ì ¸Å°³º¯¼ö¸¦ ó¸®Çϱâ À§Çؼ­ <param>ű׸¦ »ç¿ëÇÏ¸é µË´Ï´Ù. ´ÙÀ½ ÅÛÇø´À» Âü°íÇϼ¼¿ä.



ÆÄÀϸí : Parameter1.xml <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">

    <sql:header>

        <sql:param name='CategoryName'>Condiments</sql:param>

    </sql:header>

    <sql:query>

         EXEC CategoryInfoWithTemplate @CategoryName

    </sql:query>

</ROOT>





¸ÕÀú ½ÇÇàÇØ º¸µµ·Ï ÇÏÁÒ..



http://localhost/mini/template/Parameter1.xml



ºÐ¸íÈ÷ ÀúÀå ÇÁ·Î½ÃÀú´Â ¸Å°³º¯¼ö¸¦ ÇÊ¿ä·Î ÇÕ´Ï´Ù.

±×·¯³ª ¿ì¸®´Â ¸Å°³º¯¼ö¸¦ À§ÀÇ URL¿¡¼­ ÁöÁ¤ÇÏÁö ¾Ê¾Ò½À´Ï´Ù.

±×·±µ¥ °á°ú°¡ ³ª¿Ô³×¿ä..



¹Ù·Î ÅÛÇø´ÀÇ <sql:param>¿¤¸®¸ÕÆ®ÀÇ ³»¿ëÀÎ Condiments°¡ ±âº»°ªÀÎ °ÍÀÔ´Ï´Ù.

Áï, »ç¿ëÀÚ°¡ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ±âº»ÀûÀ¸·Î ¸Å°³º¯¼ö¸¦ Condiments·Î »ç¿ëÇÑ´Ù´Â °ÍÀÌÁö¿ä.



±×·¯¸é ³»°¡ ¸Å°³º¯¼ö¸¦ ÁöÁ¤ÇϰíÀÚ ÇÑ´Ù¸é ´ÙÀ½Ã³·³ URLÀ» ³Ö¾îÁÖ¸é µË´Ï´Ù.



http://localhost/mini/template/Parameter1.xml?CategoryName=Beverages



ÀÌÇØ°¡ µË´Ï±î¿ä?? ±×·¸´Ù¸é ¸Å°³º¯¼ö´Â ÀúÀå ÇÁ·Î½ÃÀú¿¡¼­¸¸ »ç¿ëÇÒ ¼ö ÀÖ³ª¿ä?

±×·¸Áö ¾Ê½À´Ï´Ù. ´ÙÀ½°ú °°Àº ÅÛÇø´¿¡¼­ º¸¸é SQL¹®ÀÇ WHEREÀý¿¡¼­ ¸Å°³º¯¼ö¸¦ »ç¿ëÇÑ °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.



ÆÄÀϸí : Parameter2.xml <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">

    <sql:header>

        <sql:param name='CustomerID'>ALFKI</sql:param>

        <sql:param name='EmployeeID'>1</sql:param>

    </sql:header>

    <sql:query>

         SELECT   CustomerID, CompanyName

         FROM      Customers

         WHERE    CustomerID = @CustomerID

         FOR XML AUTO

    </sql:query>

    <sql:query>

         SELECT   EmployeeID, LastName, FirstName

         FROM      Employees

         WHERE    EmployeeID = @EmployeeID

         FOR XML AUTO

    </sql:query>

</ROOT>





Àá±ñ ÅÛÇø´ÀÇ ³»¿ëÀ» »ìÆìº¸µµ·Ï ÇÏÁÒ.

<sql:header>¿¡ <sql:param>À¸·Î ¸Å°³º¯¼ö¸¦ ÁöÁ¤ÇÏ¿´½À´Ï´Ù.

<sql:param>ÀÇ ³»¿ëÀ» º¸¸é,

°í°´ ID¿Í Á÷¿ø IDÀÇ ±âº»°ªÀº °¢°¢ ALFKI¿Í 1ÀÌ µÈ´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù.



±×¸®°í <sql:query>°¡ Áö±Ý±îÁö´Â Çϳª¸é ¾²¿´´Âµ¥ ¿©±â¼­´Â 2°³ÀÇ ¹®ÀåÀÌ ¼öÇàµË´Ï´Ù.

°¢°¢ÀÇ °á°ú°¡ ·çÆ® ¿¤¸®¸ÕÆ®ÀÇ ÀÚ½ÄÀ¸·Î µé¾î°¡°ÚÁÒ..



ÀÚ.. ±×·³ °á°ú¸¦ Çѹø º¼±î¿ä??



http://localhost/mini/template/Parameter2.xml



µÑÁßÀÇ °í°´ ID¸¸ ¸Å°³º¯¼ö °ªÀ» ÁöÁ¤ÇÏ¸é ´ÙÀ½°ú °°ÀÌ µÇ°ÚÁÒ..

ÀÌ °æ¿ì Á÷¿ø ID´Â ±âº»°ªÀ» »ç¿ëÇÕ´Ï´Ù.



http://localhost/mini/template/Parameter2.xml?CustomerID=BERGS



2°³ÀÇ ¸Å°³º¯¼ö°ªÀ» ¸ðµÎ Àü´ÞÇÑ´Ù¸é ´ÙÀ½°ú °°ÀÌ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.



http://localhost/mini/template/Parameter2.xml?CustomerID=BERGS&EmployeeID=2



ÅÛÇø´¿¡ XSL Àû¿ë



ÅÛÇø´¿¡ XSLÀ» Àû¿ëÇϱâ À§Çؼ­´Â XSLÀ» ÁöÁ¤ÇÏ´Â ºÎºÐÀÌ ÇÊ¿äÇÕ´Ï´Ù.

À̰Ϳ¡´Â µÎ°¡Áö ¹æ¹ýÀÌ Àִµ¥¿ä..



ù°´Â À§¿¡¼­ º¸¾ÒµíÀÌ ÅÛÇø´ÀÇ ·çÆ® ¿¤¸®¸ÕÆ®¿¡ sql:xsl¼Ó¼º°ªÀ» ÁöÁ¤ÇÏ¿© XSLÀ» Àû¿ëÇÒ ¼ö ÀÖ°í¿ä.

µÑ°´Â ÅÛÇø´ÀÌ ¾Æ´Ñ URL¿¡ XSLÆÄÀÏÀ» ÁöÁ¤ÇÏ´Â ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù.



¸ÕÀú ù ¹øÂ° ¹æ¹ýÀ» »ìÆìº¸µµ·Ï ÇÏÁÒ..

¿©±â¿¡¼­ »ç¿ëµÇ´Â XSLÆÄÀÏÀº URL Äõ¸®¿¡¼­ »ç¿ëÇÑ employee.xslÀÔ´Ï´Ù.



ÆÄÀϸí : StyleSheet1.xml <root xmlns:sql="urn:schemas-microsoft-com:xml-sql"

            sql:xsl="employee.xsl">

    <sql:query>

        SELECT    FirstName, LastName

        FROM       Employees

        FOR XML AUTO

    </sql:query>

</root>





¸ÕÀú °á°ú¸¦ º¸°í À̾߱â ÇÏÁÒ..



http://localhost/mini/template/StyleSheet1.xml



¾û... ¿ì¸®°¡ ±â´ëÇÑ ÇüŰ¡ ¾Æ´Ï³×¿ä..

°á°ú¸¦ º¸¸é HTMLÆÄÀÏ Çü½ÄÀ̱â´Â Çѵ¥.. XML ÇüÅ·Π³ªÅ¸³ª°í ÀÖ½À´Ï´Ù.

¿Ö±×·²±î¿ä??



ÅÛÇø´À» »ç¿ëÇÒ °æ¿ì MSSQLÀÌ ¸®ÅÏÇÏ´Â °á°ú°ªÀÇ Å¸ÀÔÀº XMLÀÌ ±âº»ÀÔ´Ï´Ù.

±×·¡¼­ ÀÌ °á°úµµ XMLó·³ º¸¿©ÁÖ´Â °Ì´Ï´Ù.

ÀÌ·¯ÇÑ °á°ú°ªÀÇ Å¸ÀÔÀ» ÁöÁ¤ÇÒ ¼ö°¡ Àִµ¥..±×°Ô ¹Ù·Î contenttypeÀÔ´Ï´Ù.

º¸Åë contenttype=text/xmlÀÌ ±âº»À̶ó´Â °ÍÀÌÁÒ..



±×·¡¼­ contenttype=text/html·Î º¯°æÇØ ÁÖ¸é µË´Ï´Ù. À̰ÍÀº ´ÙÀ½Ã³·³ »ç¿ëÇÕ´Ï´Ù.



http://localhost/mini/template/StyleSheet1.xml?contenttype=text/html



°á°ú°¡ Àß ³ª¿ÀÁÒ..



±×·±µ¥..Á¦ °­Á¸¦ Á¤»óÀûÀ¸·Î µû¶ó¿À½Å ºÐÁß¿¡ Ȥ ÀÌ·± Áú¹®À» ÇÏ´Â ºÐÀÌ °è½Ç °Í °°³×¿ä..

URL Äõ¸® °­ÁÂÀÇ ¸¶Áö¸·¿¡



http://localhost/mini?sql=SELECT+FirstName,LastName+FROM+Employees+FOR+XML+AUTO&root=root&xsl=employee.xsl



ÀÌ·¸°Ô »ç¿ëÇÏ¿´°Åµç¿ä.. contenttypeÀÌ ¾ø´Âµ¥µµ XML·Î Ç¥½ÃµÇÁö ¾Ê°í HTML·Î Àß ³ª¿Ô½À´Ï´Ù.

±×·¸ÁÒ... ¿Ö±×·²±î¿ä?



Á¦°¡ ÆÇ´ÜÇϱ⿡.. URL Äõ¸®¿¡¼­´Â ¸ÕÀú SQL¹®À» ´øÁ®¼­ XML ¹®¼­¸¦ °¡Á®¿É´Ï´Ù.

±×¸®°í ³ª¼­ XSLÀ» Àû¿ëÇÏÁÒ..

±×·¯´Ï±ñ



XML ¹®¼­ + XSL ¹®¼­ = IE 5.0À̻󿡼­ Çü½Ä¿¡ ¸ÂÃß¾î Ãâ·Â



ÀÌ µÇ´Â °Ì´Ï´Ù.



ÇÏÁö¸¸ ÅÛÇø´¿¡ µé¾î°£ °ÍÀº °á°ú ¹®¼­°¡ XSLÀ» Àû¿ë½ÃÄÑ HTML ÇüÅ·Π³ª¿À±â´Â ÇÏÁö¸¸

ÅÛÇø´ÀÇ °á°ú´Â XML¹®¼­ÀÎ °ÍÀÔ´Ï´Ù.

±×·¯¹Ç·Î



XML ¹®¼­ = IE 5.0À̻󿡼­ XML Çü½ÄÀ¸·Î Ãâ·Â



µÇ´Â °ÍÀÌÁö¿ä..



¸Â´Â ¸» °°³ª¿ä?? °á°ú¸¦ º¸°í¼­ Á¦°¡ ³»¸° °á·ÐÀÔ´Ï´Ù.



ÅÛÇø´¿¡ XSLÀ» Àû¿ëÇÏ´Â µÎ ¹øÂ° ¹æ¹ýÀº URL¿¡ XSLÀ» ÁöÁ¤ÇÑ´Ù°í ÇÏ¿´ÁÒ..



ÆÄÀϸí : StyleSheet2.xml <root xmlns:sql="urn:schemas-microsoft-com:xml-sql">

    <sql:query>

        SELECT    FirstName, LastName

        FROM       Employees

        FOR XML AUTO

    </sql:query>

</root>





·çÆ® ¿¤¸®¸ÕÆ®ÀÇ ¼Ó¼ºÁß sql:xslÀÌ ¾ø¾îÁ³½À´Ï´Ù. ´ë½Å URL¿¡ ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÏ¸é µË´Ï´Ù.



http://localhost/mini/template/StyleSheet2.xml?xsl=employee.xsl



ÀÚ! ¿©±â¿¡¼­µµ contenttypeÀ» ÁöÁ¤ÇÏÁö ¾Ê¾ÒÁÒ..



ÀÌ·¸°Ô ÇØ¼­ ÅÛÇø´¿¡ ´ëÇØ¼­ ¾Ë¾Æº¸¾Ò½À´Ï´Ù.

óÀ½ Á¢ÇÒ ¶§´Â ¾î·Æ°Ô ´À²¸ÁúÁöµµ ¸ð¸£Áö¸¸ °¡¸¸È÷ º¸¸é

XMLÀÇ ±âº»À» ±×¸® ¹þ¾î³ªÁö ¾ÊÀº ³»¿ëµéÀÔ´Ï´Ù.



MSSQL °­Á¿¡¼­´Â ¸¹Àº ¿¹Á¦¸¦ ´Ù·ç·Á°í ÇÏ´Ï ³»¿ëÀÌ Á» ±æ¾îÁö³×¿ä..

±âº»ÀûÀÎ °Í¸¸ ÇÏ·Á°í Çߴµ¥.. ÇÏ´Ùº¸´Ï À̰ÍÀú°Í ´ÙÇÏ°Ô µÇ³×¿ä.

¾ÕÀ¸·Î 2~3Â÷·Ê Á¤µµ¸é MSSQL °­Á°¡ ¸¶¹«¸® µÉ °Í °°³×¿ä. ±×·³...  2002/08/21 ¹Ì´Ï

¹ÚÁ¤¹Î
SQLQuery2.xml ¿Í SQLQuery3.xml ÀÇ Â÷ÀÌÁ¡ÀÌ ¹«¾ðÁö¿ä?? 2006-07-04
±èµ¿ÇÑ
Ȥ½Ã ¼Ò½ºÄڵ带 ¾Èº¸¼Ì´Ù¸é SQLQuery2.xml ¿Í SQLQuery3.xmlÀÇ Â÷ÀÌÁ¡À» ¸ð¸£½Ç¼öµµ Àְڳ׿ä..
º¸½Ã¸é ¾Æ½Ã°ÚÁö¸¸..
SQLQuery3.xml¿¡¼±

WHERE UnitPrice > 10
´ë½Å¿¡
WHERE UnitPrice &gt; 10
ÀÌ·¸°Ô ½áÀÖ½À´Ï´Ù.

Á¤È®ÇÑ ±âÁØÀº Àúµµ ¸ð¸£Áö¸¸ ¿¤¸®¸ÕÆ® ³»¿ë¾È¿¡ µé¾î°£ < ³ª > ,&ÀÌ·±°Ç ¸í·É¹®À¸·Î ÀνĵǼ­..¿¡·¯°¡ ³ª´Â °æ¿ì°¡ ÀÖ´õ¶ó±¸¿ä..

<tag1> A < B or C > A </tag1>..
¸¸¾à¿¡..ÁøÂ¥·Î ¸¸¾à¿¡ Àú·± ±¸¹®ÀÌ ÀÖ´Ù°í °¡Á¤ÇßÀ»¶§..
Á¦ Àǵµ´Â A°¡ Bº¸´Ù À۰ųª C°¡ Aº¸´Ù Å©¸é..À̶ó´Â ³»¿ëÀ» tag1À̶ó´Â ű׿¡ ³Ö°í ½Í¾úÀ»»ÓÀÌÁö¸¸..
Àú·¸°Ô¸¸ ½á³õÀ¸¸é ÀÐÀ»¶§ tag1À̶ó´Â ű׻çÀÌ¿¡ <B or C>¶ó´Â ÀÌ»óÇÑ À̸§ÀÇ Å±װ¡ µé¾îÀÖ´Ù..¶ó°í »ý°¢ÇÒ¼ö Àְŵç¿ä...»ç¶÷À̶ó¸é ¾Æ´Ñ°É ¾Ë°ÚÁö¸¸...ÄÄÅÍ´Â »ç¶÷ÀÌ ¾Æ´Ï´Ï;;
±×·¡¼­ '<' ´ë½Å¿¡ '&lt;'
'>' ´ë½Å¿¡ '&gt;' ¶ó°í ¾²´Â°Å·Î ¾Ë°íÀÖ´Ù´Â..ÄÄÅͰ¡ Àǵµ¸¦ ¾Ë¾Æ¸Ô°Ô Çϱâ À§Çؼ­ ¸»ÀÌÁÒ.

SQLQuery2.xmlÀÇ °æ¿ì¿¡¼± ¿Ö ¿¡·¯°¡ ¾È³ª´ÂÁö¸¦ À߸𸣰ÚÁö¸¸¿ä..
¹¹..°°Àº½ÄÀ¸·Î ¸»ÇÏÀÚ¸é..ÄÄÅͰ¡ ÀúÁ¤µµ´Â Àǵµ¸¦ ¾Ë¾Æ¸Ô´Â´Ù..¶ó´Â°Å°ÚÁö ½Í³×¿ä...

»ç½Ç Àúµµ À߸ð¸£Áö¸¸...Àú¶û °°Àº °í¹ÎÀ» ÇϽŰŠ°°¾Æ¼­.½áº¾´Ï´Ù.. (ÀÌ¹Ì ¾Æ¼ÌÀ»¶ó³ª..;;)
2006-07-24
±èµ¿ÇÑ
ÀúÀ§¿¡ SQLQuery2.xml °ú SQLQuery3.xmlÀÇ ³»¿ëÀÌ ¶È°°ÀÌ ½áÁ®Àִ°Ç
ÀÎÅÍ³Ý ÀͽºÇ÷η¯°¡ &lt;¶ó°í ¾²¸é ÀÚüÀûÀ¸·Î <·Î º¸ÀÌ°Ô Çϰí
&gt;¶ó°í ¾²¸é >·Î º¸ÀÌ°Ô Çϱ⶧¹®ÀΰŠ°°³×¿ä..
&´Â ¾²¸é ¹«Á¶°Ç ¸í·É¹®À¸·Î ÀÐÈ÷±â¶§¹®¿¡ ±×³É ¹®ÀÚÀÇ Àǹ̷Π¾²·Á¸é &amp;¶ó°í ½á¾ß &°Ô ³ª¿É´Ï´Ù.
±×·¡¼­ Áö±Ý Àú°°Àº°æ¿ì´Â ¾î¶»°Ô ¾²³Ä¸é...&lt;¶ó´Â ¹®ÀÚ¸¦ ¾²±âÀ§ÇØ ½ÇÁ¦·Ð &amp;lt;¶ó°í ¾²°í Àִ°ÅÁÒ.
2006-07-24
View List
Copyright 1999-2010 Zeroboard / skin by sirini

¹Ì´ÏÀÇ ±ÛÀº ´ÙÀ½°ú °°ÀÌ Ãâ󸦠¹àÈ÷½Ã¸é °¡Á®°¡¼­ Ȱ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
[Ãâó : ¹Ì´ÏÀÇ XML DeveloperGroup (http://www.word.pe.kr)]