본문 바로가기
컴퓨터관련/Python

[python]MS-SQL연동 및 SELECT 하기

by 빛과 어둠사이 2019. 8. 30.
728x90
반응형
SMALL

저는 업무를 할 때

DB에 접속해서

SELECT 해와서 

결과를 가지고 처리를 하는 일을 많이 합니다.


이건 많은 사람들이 다 그럴거라 생각합니다.

그래서 이번에는 MS-SQL을 연결해서

DB에서 SELECT 해와서

결과를 가지고 출력하는 것 까지

해보도록 하려고 합니다.


우선 MS-SQL을 python과 연동하기 위해서는

설치를 해야 합니다.


그러기 위해서는 명령프롬프트로 들어가야 합니다.

시작 - 실행 - cmd

를 입력하여 실행하거나

시작 - 명령프롬포트를 검색해서

실행하면 됩니다.

그래서 아래처럼

명령프롬프트를 실행시킵니다.



이곳에 명령어를 입력하면 됩니다.

명령어는 다음과 같습니다.

pip install pymssql

위와 같이 입력을 해주시면 되십니다.


그러면 아래 이미지처럼

자동으로 설치를 합니다.



위처럼 되어서 설치가 된 것을

확인할 수 있습니다.


그럼 이제 visual studio code로 가서

파이썬에서 코딩을 해보도록 하겠습니다.

샘플 소스는 다음과 같습니다.

import pymssql

conn = pymssql.connect(server="DB IP", user="계정", password="비밀번호", database="DB명")
cursor = conn.cursor()

cursor.execute("쿼리")

row = cursor.fetchone()
while row:
    print("mem_id = %s, mem_name = %s" % (row[0], row[1]))
    row = cursor.fetchone()
    
conn.close()

위는 샘플로 된 것으로

위 샘플을 변경하여

저는 아래처럼 소스를 작성하여보았습니다.


print할 때

%s, %d 등을 할 때는

C언어와 같은 거 같네요.

이 것들에 대해서는

나중에 다시 정리해보도록 할께요.


위의 예제 쿼리를 기준으로

아래처럼 코딩을 해보았습니다.

import pymssql 

#DB연결
conn = pymssql.connect(server=".....", user="...", password="....", database="....")
cursor = conn.cursor()

#쿼리 작성
cursor.execute("select top 10 mem_id, mem_name from member_master")

row = cursor.fetchone()
while row:
print("mem_id = %s, mem_name = %s" % (row[0], row[1]))
row = cursor.fetchone()
conn.close()




그랬더니 결과는

아래처럼 나왔네요.

결과값을 가지고 와서

화면에 출력을 하는 것입니다.



이곳에서 print 방법을 바꿀 수 있습니다.

print("mem_id2 = " + str(row[0]) + ", mem_name = " + str(row[1]))

print 부분만을 위처럼 바꿨습니다.

그래서 아래처럼 코딩이 되었습니다.




그랬더니 결과는 아래처럼 나왔습니다.



결과는 첫번째 print한 것과

두번째 print 한 것이 동일하네요.


출력하는 방법은

원하는 방법으로 하시면 되실 것 같습니다.



오늘은 MSSQL DB를 파이썬과 연동하여

SELECT 쿼리를 날려

데이터를 조회해오는 것을 정리해보았습니다.


나중에는 이 데이터를 가지고

여러가지 작업을 하고,

분기나 반복을 하는 등

여러가지 더 자세히 알아보도록 하겠습니다.



이번엔 이상으로

python에서 MSSQL DB연결 및 

SELECT 하는 방법이였습니다~



728x90
반응형
LIST