ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 웹페이지와 DB를 연결하자.!!
    Programing/Web 2008. 4. 29. 20:21

    1. SqlConnection 개체

     - using System.Data.SqlClient; 네임스페이스를 선언후에 사용한다.
     - SQL Server 데이터베이스에 대한 열린 연결을 나타냅니다. 이 클래스는 상속될 수 없습니다

    SqlConnection 개체는 SQL Server 데이터 소스에 대한 고유 세션을 나타냅니다.
    클라이언트/서버 데이터베이스 시스템의 경우, 이 개체는 서버에 대한 네트워크 연결에 해당합니다. Microsoft SQL Server 데이터베이스에 연결할 때 SqlConnectionSqlDataAdapterSqlCommand와 함께 사용하여 성능을 향상시킵니다.
    SqlConnection의 인스턴스를 만드는 경우 모든 속성이 초기 값으로 설정됩니다.
    SqlConnection이 범위를 벗어나면 닫히지 않습니다. 따라서 동일하게 작동하는 Close 또는 Dispose를 호출하여 명시적으로 연결을 닫아야 합니다.
    모든 타사 SQL 서버 제품 및 다른 OLE DB 지원 데이터 소스의 경우 OleDbConnection을 사용합니다.

    연결을 위해서 웹구성파일에(.config) 다음과 같이 코딩한다.(MS-SQL)

    <connectionStrings>
        <add name="CHANY_DB" connectionString="Data Source=CHANY;(서버이름)
             Initial Catalog=depthBoard;(DB이름)
             user id=아이디; Password=패스워드" providerName="System.Data.SqlClient"/>
      </connectionStrings>


    그리고 SqlConnection을 사용하여 개체를 생성한다.(.aspx.cs)

     SqlConnection Con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings ["CHANY_DB"].ConnectionStrings);


    2. SqlCommand 개체

    - SQL Server 데이터베이스에 대해 실행할 Transact-SQL 문이나 저장 프로시저를 나타냅니다. 이 클래스는 상속될 수 없습니다.
    쿼리의 텍스트와 SqlConnection을 사용하여 SqlCommand 클래스의 새 인스턴스를 초기화합니다.

    위의 SqlConnection을 사용하여 sql과 연결되었으니 이제 쿼리문을 통해 명령어를 전달하여야 한다.

    SqlCommand Cmd = new SqlCommand("INSERT_BOARDNEW", Con);

    INSERT_BOARDNEW 은 개인적으로 만든 저장프로시저이다.. 보통 Select등과 같은 문을 사용해도 무관한다.

    Cmd.CommandType = CommandType.StoredProcedure;
    프로시저 사용을 위하여 CommandType 속성을 StoredProcedure로 설정...

    Cmd.Parameters.Add("@Writer", SqlDbType.VarChar, 20);
    Cmd.Parameters.Add("@Pwd", SqlDbType.VarChar, 20);

    위와같이  Parameters 속성을 사용하여 변수 이름과 데이터 형식을 정하고.

    Cmd.Parameters["@Writer"].Value = name.Text;
    Cmd.Parameters["@Pwd"].Value = pwd.Text;

    와 같이 각변수에 데이터값을 넣는다. name과 pwd는 사용한 텍스트박스의 이름이다.

    이렇게 사용될 쿼리문이 다 만들어 졌다면...이제 SqlConnection 객체를 연다
    Con.Open();
    열었다면 이제 실행을 하고...
    Cmd.ExecuteNonQuery();   // 실행하고 행의수를 반환한다.
    닫아준다.
    Con.Close();

    다되었다면 객체를 깨끗하게 청소도 해주면 좋고...
    Cmd = null;
    Con = null;


    3. SqlDataAdapter 개체

     - DataSet을 채우고 SQL Server 데이터베이스를 업데이트하는데 사용할 데이터 명령 집합과 데이터베이스 연결을 나타냅니다
    말그대로 시퀄서버에 접속해서 데이터를 받아온후에 데이터셋에 그 값을 입력해주는 중간자적 역할을 하는 놈이라 할수 있다.

    SqlDataAdapter adapter = new SqlDataAdapter(cmd);

    'Programing > Web' 카테고리의 다른 글

    FileUpload 컨트롤  (0) 2008.05.14
    Server.MapPath  (0) 2008.05.14
    ASP.NET으로 게시판 만들기 2부  (1) 2008.05.13
    ASP.NET으로 게시판 만들기 1부  (0) 2008.05.09
    유효성 검사 컨트롤 - RequiredFieldValidator 컨트롤  (0) 2008.05.02
    GridView 컨트롤  (0) 2008.04.30
    SqlDataSource 컨트롤  (0) 2008.04.30
    TextBox 에서 개행 제대로 하기  (0) 2008.04.23
    링크된 폰트 색깔 및 밑줄 없애기  (0) 2008.04.22
    롤오버 태그  (0) 2008.04.22
Designed by Tistory.