랭귀지/python
                
              파이썬으로 Microsoft SQL 서버 스크립트하기
                유키공
                 2017. 12. 17. 14:01
              
              
                                
        Microsoft SQL 서버가 있다면, 이런 상황을 맞이해 보았을 것이다.
«Enterprise Manager (일명 MMC) 에서 모든 클릭을 스크립트할 수 있다면 얼마나 좋을까!».
할 수 있다 ! MMC로 할 수 있는 것이면 무엇이든 파이썬으로 스크립트할 수 있다.
win32all 파이썬 모듈만 있으면 파이썬에서 COM 객체에 접근할 수 있다
(win32all 모듈은 ActiveState사의 파이썬 배포본으로도 제공된다)
일단 설치했으면, 그냥 SQL-DMO 객체를 사용하자.
예를 들어, 서버에 있는 데이터베이스 리스트를 얻자:
from win32com.client import gencache
s = gencache.EnsureDispatch('SQLDMO.SQLServer')
s.Connect('servername','login','password')
for i in range(1,s.Databases.Count):
    
print s.Databases.Item(i).Name
또는 테이블 스크립트를 얻자:
database = s.Databases('COMMERCE')
script = database.Tables('CLIENTS').Script()
print script