pymssql nextset() 빈값 이슈

최근에 구현한 부분에서 이상한 경험을 했는데 같은 db 프로시저를 호출하는 코드를 쓰고 테스트를 했는데 어떤 조건으로는 데이터가 순서에 맞게 잘 나오고 안나오고 하는 경우였다. 데이터는 mssql 저장 프로시저에서 2개의 결과셋을 반환하는데 첫번째에서는 보여줄 데이터의 금액, 건수 합산 데이터를 보여주고, 두번째에서는 실제 보여줄 데이터가 나오는 것이었다. 그래서 generator 를 이용해서 g.next(), g.next() 이렇게 2번… Read More

pyodbc-MSSQL 사용시, 한글 문제

이전에 pyodbc 를 사용하는 부분에 대해서 설명했었는데 이번에는 한글 insert 시 깨지는 문제가 생긴다. 이 문제의 해결을 위해서 사실은 사용하는 파이썬쪽, 그리고 돌아가는 리눅스의 LANG, LOCALE 설정, 그리고 PYODBC 와 FreeTDS, UNIXODBC 등의 설정을 모두 UTF8로 설정했음에도 불구하고 발생하는 문제였다. 한 2일 정도 고생하다가, 모든 내용을 StackOverflower 에 올렸다.  http://stackoverflow.com/questions/26503531/why-insert-empty-value-using-pyodbc-in-linux-environment… Read More

리눅스에서 pyodbc 이용해서 mssql과 연동하기

일반적으로 python-mssql 라이브러리들은 윈도우를 기반으로 동작한다. 이때 pyodbc나 pymssql 들은 내부적으로 윈도우에 설치된 SqlClient 등의 라이브러리에 의존하게 된다.  문제 : 리눅스 환경에서는 SqlClient 와 같은 라이브러리가 없는데 어디에 의존해야 할까? pyodbc 를 기준으로 설명하자면, 리눅스 환경. CentOS, Ubuntu, MAC OSX 등의 환경에서는 unixODBC 와 FreeTDS 라는 라이브러리가 필요하다. unixODBC  – non winodws platform 상에서 표준 ODBC를 사용할수… Read More

[펌] MS-SQL : 저장 프로시저 만들기

출처 : http://cafe.naver.com/hackertime/397 **저장 프로시저 만들기** 사용법) CREATE PROC[EDURE] 저장 프로시저 이름 [저장 프로시저의 매개 변수 목록] AS  저장 프로시저 내에서 실행될 쿼리들   **1. 매개변수 없는 프로시져** 예) CREATE PROC up_member AS Begin  SELECT *  FROM test_member End 실행명령 :  EXEC 실행할 저장 프로시저 이름 (EXEC up_member)   **2. 매개변수… Read More