본문으로 바로가기

C# Postgresql 연동하기

category C# 2019. 4. 23. 08:44
반응형

C# Postgresql DB 연동하기..

Postgresql DB를 연동하기 전에 우선 Npgsql 패키지를 참조해야 한다.

 

Npgsql 패키지 참조 방법

1. 프로젝트 우측 클릭 후 Nuget 패키지 관리 

2. 찾아보기 탭에서 Npgsql 입력 후 검색

3. Npgsql 패키지 다운로드(최신버전으로 다운)

 

command.Parameters.AddWithValue("A", 데이터1);

command.Parameters.Add("A", 데이터1);

둘다 잘 동작한다

원래 Parameters.Add("A", type) 메소드는 이런 형식으로 해줘야 한다고 한다..

 

연동하면서 생긴 문제

1. SELECT 구문을 이용할 때 내림차순으로 정렬하기 위해 ORDER BY 컬럼명 DESC 을 하였지만 반응이 없었다

   그 이유는 구문에서 테이블 컬럼 인식을 못한거였었다.. 많이 시간 동안 찾아보고 .. 해서 알게 되었는데

   구문에  \"컬럼명\" 이런 형식으로 입력을 해주게 되면 인식을 하는 것이었다.. 

 

2. 비트형식인 데이터를 저장할 땐 데이터 형변환을 통해 저장해야 한다는 점..

   

//DB 연동 메소드
 public void DB()
        {
            
            //POSTGRESQL DB 연결 정보
            string connString = "HOST=IP;PORT=5432;USERNAME=postgres;PASSWORD=PW;DATABASE=postgres";

            //POSTGRESQL  db 오픈 
            using (var conn = new NpgsqlConnection(connString))
            {
                try
                {
                    conn.Open();

                    // DB INSERT 구문
                    using (var command = new NpgsqlCommand())
                    {
                        command.Connection = conn;
                        command.CommandText = "INSERT INTO 테이블명 VALUES(@A, @B, @C, @D)";
                        command.Parameters.AddWithValue("A", 데이터1);
                        command.Parameters.AddWithValue("B", 데이터2);
                        command.Parameters.AddWithValue("C", 데이터3);
                        command.Parameters.AddWithValue("D", 데이터4);
                        command.ExecuteNonQuery();
                    }

                    //DB SELECT 구문
                    using (var command = new NpgsqlCommand())
                    {
                        
                        command.Connection = conn;
                        
						//컬럼 이용시 \"컬럼명\"
						//SELECT 모든 데이터 검색 및 내림차순 정렬
                        command.CommandText = "SELECT * FROM 테이블 명 ORDER BY  컬럼명 DESC ";
                        using (var reader = command.ExecuteReader())
                        {

                            while (reader.Read())
                            {
                                AppendText(txtDB, "데이터 읽기");
                                var Data = new String[] {
                           reader["A"].ToString(),
                           reader["B"].ToString(),
                           reader["C"].ToString(),
                           reader["D"].ToString(),
                           
                        };

                                foreach (var i in Data)
                                {
                                    AppendText(txtDB, "Select 된 데이터 :" + i);
                                   
                                }
                                reader.Close();

                               
                            }
                        }
                    }
                }

                catch (Exception e)
                {
                    //AppendText(txtDB, "에러입니다");
                }
                

                conn.Close();
            }
            

 

[C#] - C# Postgresql DB 트랜잭션 사용하기

 

C# Postgresql DB 트랜잭션 사용하기

안녕하세요 ! 흔히 여러개의 쿼리를 동시에 요청을 할 때는 트랜잭션을 사용하여 차례대로 처리가 되어야 하는데요! C# 에서 Postgresql DB 트랜잭션 처리하는 부분을 보여드리겠습니다. Postgresql DB 연결 방법..

dodo1054.tistory.com

[PostgreSQL] - PostgreSQL 원격접속하는 방법

 

PostgreSQL 원격접속하는 방법

1. 원격서버쪽 PostgreSQL 을 우선 설치 2. [설치 경로] C:\Program Files\PostgreSQL\11\data 2.1 data 폴더에서 pg_hba.conf 메모장으로 열기 메모장을 열어보면 맨밑에 위 내용과 IPv4 부분에 127.0.0.1/32 부..

dodo1054.tistory.com

방문자 분들 모두 즐거운 하루, 행복한 하루 보내세요! 

반응형

'C#' 카테고리의 다른 글

C# ini 파일 이용하기  (0) 2019.07.19
C# Byte 배열로 형변환 하기  (0) 2019.07.15
C# 폼에서 폼으로 파라미터 인수 넘기기  (0) 2019.04.17
C# TCP/IP Client Part.3  (9) 2019.03.26
C# TCP/IP Client Part.2  (0) 2019.03.22