lecture Home > ASP.NET > ±ôÂïÀÌÀÇ ADO.NET

±ôÂï¾Æ, ADO.NET??? ADO.NET!!!

   °­Á ÃÖÃÊ ÀÛ¼ºÀÏ : 2002³â 02¿ù 14ÀÏ
   °­Á ÃÖÁ¾ ¼öÁ¤ÀÏ : 2002³â 02¿ù 15ÀÏ

   ÀÛ¼ºÀÚ : ±ôÂïÀÌ(¹Ú ¼öÀÎ)
   ÆíÁýÀÚ : Taeyo(±è Å¿µ)

   °­Á Á¦¸ñ : µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÏÀÚ

°­Á Àü Å¿ÀÀÇ Àâ´ã>

ÀÌÁ¦ ÀúÀÇ ASP.NET & Web Service ¼¼¹Ì³ªÀÇ ³¯µµ ±×¸® ¸ÖÁö ¾Ê¾Ò½À´Ï´Ù. µ¥¸ðÁß½ÉÀÇ ¼¼¹Ì³ª¸¦ ÁغñÇϰí Àִµ¥, Áغñ¸¦ Çϸé ÇÒ ¼ö·Ï ÇÒ °ÍÀÌ ¸¹´Ù´Â ´À³¦ÀÔ´Ï´Ù. À̹ø ASP.NETÀº Á¤¸»·Î ¾öû³ª°Ô °Å´ëÇÑ ³à¼®ÀÌ´õ±º¿ä. (ÇÏ~) ¸ÚÁø ¼¼¹Ì³ª°¡ µÇ±â¸¦ ÀÀ¿øÇØ Áֽñ¸¿ä. ¼¼¹Ì³ª¿¡ ¸¹ÀÌµé ¿À¼ÌÀ¸¸é ÁÁ°Ú½À´Ï´Ù. (È÷Á×) ^^


¾È³çÇϼ¼¿ä?
Á¦ °­Á¸¦ ±â´Ù¸®¼Ì³ª¿ä? ¾Æ´Ï¶ó±¸¿ä??? ¤Ñ.¤Ñ
»õÇØ ÜØÀº ¸¹ÀÌ ¹ÞÀ¸¼Ì±¸¿ä???
¿©·¯ºÐ ¸ðµÎ º¹ ¸¹ÀÌ ¹ÞÀ¸½Ã°í ºÎ~~~ÀÚ µÇ½Ã±æ ¹Ù·¡¿ä~~~ ^^;;

¿À´Ã ´Ù·ê ³»¿ëÀº µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÏ´Â °ÍºÎÅÍ ¾Ë¾Æº¸·Á°í ÇÕ´Ï´Ù. ¾î¶² ºÐ¾ßÀÌ´øÁö ±âº»ÀÌ Áß¿äÇÑ °Í ¾Æ´Ï°Ú¾î¿ä? ¾Æ¹«¸® ÁÁÀº ÇÁ·Î±×·¥À» ¸¸µé¾ú´Ù°í ÇÏ´õ¶óµµ µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÀ» ÇÏÁö ¸øÇÑ´Ù°í ÇÑ´Ù¸é ±×°Ç ÇÁ·Î±×·¥ÀÌ ¾Æ´Ï°í ´ÜÁö ¼Ò½º Äڵ忡 ºÒ°úÇÏ´Ù´Â °Í.... Àü Ãʺ¸½ÃÀý¿¡ óÀ½ ¹Þ¾Æº» °ø°³ ¼Ò½º¿¡¼­ »ÀÀú¸®°Ô ´À²¼´ä´Ï´Ù. ¤Ñ.¤Ñ ( ¹ú½á ¸î ³âÀüÀÎÁöµµ ¸ð¸£°Ú³×¿ä.. ^^ )

º»·ÐÀ¸·Î µé¾î°¡µµ·Ï ÇϰڽÀ´Ï´Ù.
ADO.NET¿¡¼­´Â µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÀ» ÇÒ ¶§¿¡´Â ±âÁ¸ÀÇ ADO ¿Í ±×¸® ´Ù¸¥ Á¡ÀÌ ¾ø½À´Ï´Ù. µ¥ÀÌÅͺ£À̽º¿ÍÀÇ ¿¬°áÀ» ´ã´çÇϴ Ŭ·¡½ºµµ ADO¿Í ºñ½ÁÇÏ°Ô Connection Ŭ·¡½º°¡ ´ã´çÇϰí ÀÖ´ä´Ï´Ù. ´Ù¸¸ µ¥ÀÌÅͺ£À̽ºÀÇ Á¾·ù¿¡ µû¶ó¼­ Ŭ·¡½º°¡ ¹Ù²ï´Ù´Â Á¡ÀÌ ADO¿Í ´Ù¸¥ Á¡ÀÌÁÒ. Âü°í·Î °­Á¿¡¼­ »ç¿ëµÇ´Â ¿¹Á¦¿¡¼­´Â SQL Server 2000À» ±âÁØÀ¸·Î ¼³¸íÇϵµ·Ï ÇϰڽÀ´Ï´Ù.

Connection Ŭ·¡½ºÀÇ Á¾·ù¿¡´Â SQL ¼­¹ö 7.0°ú ±× ÀÌ»óÀÇ ¹öÀüÀ» Áö¿øÇÏ´Â SqlConnection°ú OLE DB µ¥ÀÌÅͺ£À̽º¸¦ Áö¿øÇÏ´Â OleDbConnection, ODBC¸¦ Áö¿øÇÏ´Â OdbcConnection ÀÌ ÀÖ½À´Ï´Ù. ( ¾Æ¸¶µµ Á¦ »ý°¢À¸·Î´Â ODBC¸¦ »ç¿ëÇÏ´Â ÀÏÀº °ÅÀÇ ¾øÀ» °Í °°³×¿ä. ) °¢°¢ÀÇ Å¬·¡½º´Â °ÅÀÇ À¯»çÇÑ ±â´ÉÀ» Á¦°øÇϰí ÀÖÀ¸¹Ç·Î ¿©·¯ºÐÀÌ »ç¿ëÇϽðíÀÚ ÇÏ´Â Á¾·ù¿¡ µû¶ó¼­ Ŭ·¡½º¸¦ ¼±ÅÃÇÏ½Ã¸é µË´Ï´Ù.

Connection Ŭ·¡½º·Î µ¥ÀÌÅͺ£À̽º¿Í ¿¬°áÀ» ÇÏ°í ³ª¸é µ¥ÀÌÅͺ£À̽º¿¡¼­ ·¹Äڵ带 °¡Á®¿À°Å³ª µ¥ÀÌÅͺ£À̽ºÀÇ ·¹Äڵ带 º¯°æÇÏ´Â µîÀÇ ÀÛ¾÷À» ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÁÖÀÇÇÏ½Ç Á¡Àº ¸ðµç ÀÛ¾÷ÀÌ Á¾·á°¡ µÇ¸é ¸í½ÃÀûÀ¸·Î ¿¬°áÀ» ´Ý¾ÆÁÖ¾î¾ß ÇÕ´Ï´Ù. ¸¸ÀÏ ´ÝÁö ¾Ê´Â´Ù¸é ¸Þ¸ð¸®»ó¿¡ µ¥ÀÌÅͺ£À̽º¿ÍÀÇ ¿¬°áÀ» Çϰí ÀÖÀ¸¹Ç·Î ÀÚ¿øÀÇ ³¶ºñ°¡ ÀϾ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± »ç¼ÒÇÑ ÀÚ¿øÀÇ ³¶ºñ°¡ ¿©·¯ºÐÀÇ À¥¼­¹ö¸¦ À§ÇùÇÒ ¼öµµ ÀÖ´Ù´Â °ÍÀº ¿©·¯ °÷¿¡¼­ °­Á¶ÇÑ ³»¿ëÀ̹ǷΠÀß ¾Ë°í °è½Ã°ÚÁÒ?

Connection Ŭ·¡½ºÀÇ ¶óÀÌÇÁ »çÀÌŬ( Life Cycle )Àº ´ë·« ´ÙÀ½°ú °°½À´Ï´Ù.

¨Í Connection °´Ã¼¸¦ ¼±¾ðÇÕ´Ï´Ù.
¨Î Connection °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
¨Ï µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇϱâ À§ÇÑ ¿¬°á ¹®ÀÚ¿­À» ÁöÁ¤ÇØÁÝ´Ï´Ù.
¨Ð Connection °´Ã¼ÀÇ Open ¸Þ¼­µå¸¦ »ç¿ëÇØ¼­ µ¥ÀÌÅͺ£À̽º¿ÍÀÇ ¿¬°áÀ» ¿­¾îÁÝ´Ï´Ù.
¨Ñ ÇØ´ç ÀÛ¾÷ÀÌ Á¾·áµÇ¾úÀ¸¸é Connection °´Ã¼ÀÇ Close ¸Þ¼­µå¸¦ »ç¿ëÇØ¼­ µ¥ÀÌÅͺ£À̽º¿ÍÀÇ ¿¬°áÀ» ´Ý¾ÆÁÝ´Ï´Ù.

¾î¶²°¡¿ä? ADO¿¡¼­ »ç¿ëÇÏ´ø Connection Ŭ·¡½º¿Í °ÅÀÇ À¯»çÇÏÁö ¾Ê³ª¿ä?
À̹ø¿¡´Â ½ÇÁ¦ ¼Ò½º¸¦ º¸¸é¼­ ¾Ë¾Æº¸µµ·Ï ÇϰڽÀ´Ï´Ù. µåµð¾î ºñÁÖ¾ó ½ºÆ©µð¿À .NET( ÀÌÇÏ VS .NET )À» »ç¿ëÇÏ°Ô µÇ´Â±º¿ä. Âü°í·Î Àú´Â ¸ðµç ÇÁ·Î±×·¥À» VS .NETÀ» »ç¿ëÇØ¼­ ¸¸µé¾ú½À´Ï´Ù. ±× ÀÌ¿ÜÀÇ Áú¹®Àº »ç¾çÇÕ´Ï´Ù. ( Á¦°¡ Àß ¸ð¸£°É¶û¿ä.. ^^ ) ¸ÕÀú VS .NET À» ¶ç¿ö¼­ »õ·Î¿î ÇÁ·ÎÁ§Æ®¸¦ ½ÇÇàÇÕ´Ï´Ù.


ÀÌ·¸°Ô »õ ÇÁ·ÎÁ§Æ®¸¦ »ý¼ºÇÏ°í ³ª¸é ´ÙÀ½°ú °°Àº È­¸éÀÌ »ý±âÁÒ?


ÁÂÃøÀÇ ÄÚµå À©µµ¿ì¿¡ ´ÙÀ½ÀÇ ¼Ò½ºÄڵ带 ÀÛ¼ºÇÕ´Ï´Ù. ¼Ò½º°¡ ³Ê¹« ±æ´Ù±¸¿ä? ÀÌ ¼Ò½º°¡ ±æ´Ù°í ÇÏ½Ã¸é ³ªÁß¿¡ ³ª¿À´Â ÇÁ·Î±×·¥Àº ¾î¶»°Ô ÀÛ¼ºÇϽ÷Á±¸... ¤Ñ.¤Ñ

using System;
using System.Data.SqlClient;

namespace ConnectionEx
{
    /// <summary>
    /// µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÏ´Â °£´ÜÇÑ ¿¹Á¦
    /// </summary>


    class Class1
    {
        /// <summary>
        /// µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÈÄ¿¡ ¿¬°áµÇ¾úÀ¸¸é µ¥ÀÌÅͺ£À̽ºÀÇ ¿¬°á»óŸ¦ º¸¿©ÁÖ°í
        /// ¿¬°áÀ» ´Ý¾ÆÁØ´Ù. ¸¸ÀÏ ¿¬°áÀÌ µÇÁö ¾Ê¾ÒÀ» °æ¿ì´Â ¿¡·¯¸Þ½ÃÁö¸¦ Ãâ·ÂÇÑ´Ù.
        /// </summary>

        [STAThread]
        static void Main(string[] args)
        {
            // ¨Í Connection °´Ã¼¸¦ ¼±¾ðÇÕ´Ï´Ù.
            SqlConnection objConn;

            // ¨Î Connection °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
            objConn = new SqlConnection();

            // ¨Ï µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇϱâ À§ÇÑ ¿¬°á ¹®ÀÚ¿­À» ÁöÁ¤ÇØÁÝ´Ï´Ù.°¢ÀÚ ¼­¹öÀÇ È¯°æ¿¡ ¸Â°Ô ¹Ù²ãÁÖ¼¼¿ä.
            string connectionString = "server=localhost;"
                    + "database=Pubs;uid=sa;pwd=0000";

            objConn.ConnectionString = connectionString;

            // ¨Ð Connection °´Ã¼ÀÇ Open ¸Þ¼­µå¸¦ »ç¿ëÇØ¼­ µ¥ÀÌÅͺ£À̽º¿ÍÀÇ ¿¬°áÀ» ¿­¾îÁÝ´Ï´Ù.
            try
            {
                Console.WriteLine( "µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÁß..." );

                objConn.Open();

                Console.WriteLine("µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°á ¼º°ø" );

                // µ¥ÀÌÅͺ£À̽º¿Í ¿¬°áµÇ¾úÀ¸¸é µ¥ÀÌÅͺ£À̽ºÀÇ Á¤º¸¸¦ °¡Á®¿É´Ï´Ù.
                Console.WriteLine( "¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à" );
                Console.WriteLine( "ÇöÀç µ¥ÀÌÅͺ£À̽º : " + objConn.Database );
                Console.WriteLine( "ÇöÀç ¿¬°á »óÅ : " + objConn.State );
                Console.WriteLine( "µ¥ÀÌÅͺ£À̽º ¹öÀü : " + objConn.ServerVersion );
                Console.WriteLine( "¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à¡à" );
            }
            catch( Exception e )
            {
                // ¿¡·¯°¡ ¹ß»ýÇÑ °æ¿ì´Â ¿¡·¯¸Þ½ÃÁö¸¦ »Ñ·ÁÁÝ´Ï´Ù.
                Console.WriteLine( "µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°á ½ÇÆÐ" );
                Console.WriteLine( e.Message );
                Console.WriteLine( e.StackTrace );
            }
            finally
            {
                // ¸ðµç ÀÛ¾÷ÀÌ Á¾·áµÇ¸é µ¥ÀÌÅͺ£À̽º¸¦ ´Ý¾ÆÁÝ´Ï´Ù.
                Console.WriteLine( "µ¥ÀÌÅͺ£À̽º ¿¬°á Á¾·áÁß" );
                objConn.Close();
                Console.WriteLine( "µ¥ÀÌÅͺ£À̽º ¿¬°á Á¾·á" );
            }
        }
    }
}

¼Ò½º¸¦ ¸ðµÎ ÀÛ¼ºÇßÀ¸¸é ÄÄÆÄÀÏÀ» ÇÕ´Ï´Ù. ´ÜÃàŰ´Â ( Ctrl + Shift + B )ÀÔ´Ï´Ù. »ç½Ç ÄÄÆÄÀϺ¸´Ù´Â ºôµå°¡ ¸Â´Â ¸»ÀÌÁö¿ä.
¿¡·¯°¡ ¹ß»ýÇϳª¿ä? ¿¡·¯°¡ ¹ß»ýÇÑ °æ¿ì´Â À§ÀÇ ¼Ò½º¸¦ ´Ù½Ã Àß »ìÆìº¸½Ã°í ¼Ò½º¸¦ ¼öÁ¤Çϼ¼¿ä.
¿¡·¯¸¦ ¸ðµÎ ¼öÁ¤ÇÑ ÈÄ¿¡´Â Ctrl + F5¸¦ ´­·¯¼­ ÇÁ·Î±×·¥À» ½ÇÇàÇÕ´Ï´Ù. ¾î¶²°¡¿ä? ´ÙÀ½°ú °°Àº °á°úÈ­¸éÀÌ ³ª¿À³ª¿ä?


¸¸ÀÏ ¿¡·¯°¡ ¹ß»ýÇÒ °æ¿ì´Â ´ÙÀ½°ú °°Àº È­¸éÀÌ ³ªÅ¸³¯ °ÍÀÔ´Ï´Ù.


¸¸ÀÏ OLE DB¸¦ »ç¿ëÇϽðíÀÚ ÇÏ´Â ºÐÀº À§ÀÇ ¼Ò½º Äڵ忡¼­ using System.Data.SqlClient; ÀÌ ºÎºÐÀ» using System.Data.OleDb; ·Î º¯°æÇÏ½Ã°í ¿¬°á ¹®ÀÚ¿­À» º¯°æÇØÁÖ½Ã¸é µË´Ï´Ù. OLE DB ¸¦ »ç¿ëÇÒ °æ¿ì¿¡´Â ¿¬°á ¹®ÀÚ¿­ÀÌ ¾à°£ ´Ù¸¥µ¥ Provider¸¦ ¸í½ÃÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇϸé SQL ServerÀÇ °æ¿ì´Â Á÷Á¢ SQL Server¸¦ ¿¬°áÇϹǷΠ°ø±ÞÀÚ¸¦ ¸í½ÃÇÒ Çʿ䰡 ¾øÁö¸¸ OLE DB¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â ´Ù¸¥ ¿©·¯ µ¥ÀÌÅͺ£À̽º ¼­¹ö Áß¿¡¼­ ¼±ÅÃÀ» ÇØ¾ß Çϱ⠶§¹®¿¡ °¢°¢¿¡ ¸Â´Â µ¥ÀÌÅͺ£À̽º ¼­¹öÀÇ °ø±ÞÀÚ¸¦ ¸í½ÃÇÏ´Â °ÍÀÔ´Ï´Ù. ´ÙÀ½Àº SQL Server OLE DB¿¡ ¿¬°áÇÏ´Â ¿¬°á ¹®ÀÚ¿­ÀÇ ¿¹ÀÔ´Ï´Ù.

string connectionString = "Provider=SQLOLEDB;server=localhost;"
        + "database=Pubs;uid=sa;pwd=0000";


ÀÌ»óÀ¸·Î °£´ÜÇϰԳª¸¶ µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇØ º¸´Â °ÍÀ» ¸¶Ä¡°Ú½À´Ï´Ù. ´ÙÀ½¹ø¿¡´Â ¿¬°áµÈ µ¥ÀÌÅͺ£À̽º¿¡¼­ ¿©·¯°¡Áö ÀÛ¾÷À» ÇÒ ¼ö ÀÖ´Â ±âº»À» ´õ ¾Ë¾Æº» ÈÄ¿¡ ¿¹Á¦¸¦ ´Ù·çµµ·Ï Çá°Ú½À´Ï´Ù. ¿©·¯ºÐ ¸ðµÎ Áñ°Å¿î ÇÏ·ç µÇ¼¼¿ä.

Written By ±ôÂïÀÌ
HomePage : http://www.cuteguy.pe.kr

Back