안녕하세요 이번에는 python to mssql을 라이브러리 pymssql을 사용하여 직접 구현해보도록 하겠습니다. 연결부터 insert select update 모두 예제 코드를 보며 이해 하시면 됩니다.
Pymssql Conneection
import pymssql
conn = pymssql.connect(host='localhost', user='fa' , password='fa',database='POS',as_dict=True)
연결 부분입니다. host에 ip주소 user에 id password는 비밀번호 database 는 접속할 db명을 쓰시면 됩니다. 이러면 연결 부분은 끝입니다.
cursor.conn.cursor()
select insert update delete등의 쿼리문을 실행하려면 커서를 먼저 정의해야합니다. 후에 커서를 통해 쿼리문을 실행합니다.
Pymssql Select
query="select OIL from [POS].[DBO].[POS] where CAR=%s"
cursor.execute(query,(2000))
OIL = cursor.fetchall()
OIL = OIL[0].get('OIL')
cursor까지 정의했다면 이제 쿼리문을 만들어 cursor.execute 인자값으로 넣으시면 됩니다 where절은 보통 변수가 들어가는 경우가 많기때문에 스트링 변수를 받는 %s로 정의 했습니다. 여기서 많은 오류를 경험하시는데 cursor.execute(query,2000) 일거 같지만 안에 %s로 받는 부분에 들어갈 변수나 상수는 꼭 괄호를 한번더 쳐주셔야 합니다. 해당 쿼리문이 실행되면 cursor 안에 데이터가 기록되고 fetchall함수로 가져올 수 있습니다. 그 후 변수에 담은뒤 배열 첫번째열 갖고오고 싶은 컬럼을 작성하면 됩니다. 글로 쓰면 어렵지만 예제로 한두개 하시면 금방 이해하실겁니다.
Pymssql Insert
query= "insert into [POS].[dbo].[POS] (car_num, oil) values(%s,%s)"
cursor.execute(query,('1782','2002')
conn.commit()
위에 %s부분은 설명해 드렸습니다 구조는 똑같습니다 execute 인자값으로 쿼리문과 %s에 해당되는 값을 넣고 commit()해주시면 됩니다. commit()을 안하면 락이 걸리거나 제대로 작동하지 않을 수 있습니다.
Pymssql Update
query = "update [POS].[DBO].[POS] set oil=2000 where car_num = %s"
cursor.execute(query,('2000'))
conn.commit()
위에 insert문과 동일합니다 그냥 쿼리문만 바꾸시면 됩니다. 모든 쿼리문 프로시저등 이 구조만 아시면 다 구현 가능합니다. 굉장히 간단한 작업이니 예제만 보셔도 충분히 따라하실 수 있습니다.
'개발' 카테고리의 다른 글
파이썬 머신러닝 Ensemble voting 기법 예제(KNeigborsClassifier,DecisionTree,KFold,SVM) (0) | 2022.05.11 |
---|---|
파이썬 keras layers LSTM 간단한 예제 (0) | 2022.05.11 |
파이썬 TCP 통신 UDP 통신 예제 (소켓 프로그래밍) (0) | 2022.04.19 |
파이썬 영상저장 (opencv를 이용한 ip카메라 영상저장) (0) | 2022.03.02 |
파이썬 문자인식 숫자인식 해보자(pytesseract-OCR,deep-text-recognition) (0) | 2022.02.24 |
댓글