david's daily developer note

PostgreSQL CRUD Query Simple Example 본문

Develop (kids)

PostgreSQL CRUD Query Simple Example

mouse-david 2010. 10. 26. 18:06
728x90
PostgreSQL Database Server와 .NET(C#)의 기본적인 연동 방법과 CRUD 질의 예제를 알아보자.

일단 PostgreSQL과 .NET 연동을 위해서,  PostgreSQL Database Server를 위한 닷넷 프로바이더 Npgsql를 다운받고, 
솔루션 탐색기- Reference에 Npgsql.dll을 추가한다. 그 후에, 다음을 namespace를 import한다.

            using Npgsql;

다음은 일반적인 연결 객체를 만들고, Create Query를 수행 하는 과정이다.

            string connStr = "Server=127.0.0.1;Port=5432;User Id=joe;Password=secret;Database=joedata;";

            NpgsqlConnection dbCon = new NpgsqlConnection(connStr);

            dbCon.Open();

            NpgsqlCommand dbCmd = dbCon.CreateCommand();

// 질의 문 생성.
            string sql = "CREATE TABLE \"PostgresSample\"(\"id\" character varying NOT NULL, "
                + "CONSTRAINT \"PostgresSample_pkey\" PRIMARY KEY (id))";

            dbCmd.CommandText = sql;

            dbCmd.ExecuteNonQuery();
// 질의 완료.

            dbCon.Close();

DB Server Connection String 은 순서대로, PostgreSQL Database Server가 설치된 시스템의 IP, Server Port , DB 접근 권할을 가진 User
ID와 Passward , 마지막으로 접근할 DB 이름을 적으면 되겠다.

Create Query의 원래의 형태는 다음과 같다. 

DROP TABLE "PostgresSample";
CREATE TABLE "PostgresSample"
(
  id character varying NOT NULL,
  CONSTRAINT "PostgresSample_pkey" PRIMARY KEY (id)
)

이 외에 NonQuery 예제는 다음과 같다. (질의 문 생성).
Query :  INSERT INTO "PostgresSample"(id) VALUES ('한글 테스트!!!');
string sql = "INSERT INTO \"PostgresSample\"(id) VALUES (\'한글 테스트!!!\')";

Query : UPDATE "PostgresSample" SET id='테스트 완료!!!' WHERE id='테스트 완료!!!';
string sql = "UPDATE \"PostgresSample\" SET id=\'테스트 완료!!!\' WHERE id=\'한글 테스트!!!\'";

Query : DELETE FROM "PostgresSample" WHERE id = '테스트 완료!!!';
string sql = "DELETE FROM \"PostgresSample\" WHERE id = \'테스트 완료!!!\'";

Execute Query 예제는 다음과 같다. (질의 시작 ~ 질의 완료 ~ 질의 완료)

Query : SELECT id FROM "PostgresSample" WHERE id = '테스트 완료!!!';
string sql = "SELECT id FROM \"PostgresSample\" WHERE id = \'테스트 완료!!!\'";

            dbCmd.CommandText = sql;

            NpgsqlDataReader reader = dbCmd.ExecuteReader();
            while (reader.Read())
            {
                string id = (string)reader["id"];
                MessageBox.Show(id );

            }
728x90

'Develop (kids)' 카테고리의 다른 글

Oracle .NET Client 무설치 배포.  (0) 2010.11.02
listener.ora , tnsnames.ora  (0) 2010.11.02
Oracle BulkLoading 개념.  (0) 2010.10.19
[TwiterAPI] 2. Twitterizer Class  (0) 2010.10.07
[TwiterAPI] 1. 권한 인증.  (0) 2010.10.07