mssql-python의 새로운 소식

이 글은 mssql-python 드라이버의 각 릴리스에서 변경된 내용을 나열하며, 가장 최신 버전이 우선입니다. 각 섹션은 새로운 기능, 동작 변경, 그리고 한 버전의 버그 수정을 다룹니다.

Microsoft가 현재 지원하는 버전에 대해서는 지원 수명 주기를 참조하세요.

MSSQL-Python 1.14.0

출시일: 2026년 8월

Enhancements

매개변수 검출 및 바인딩은 네이티브 코드에서 실행됩니다

매개변수 유형 검출과 바인딩은 이제 매개변수별 Python 호출 대신 단일 네이티브 파이프라인에서 실행됩니다. 이 변경은 대규모 작업(예: 벌크 인서트)에서 종단 간 처리량 향상을 통해 상당한 성능 병목 현상을 해결합니다. 애플리케이션 변경은 필요 없습니다.

버그 수정

timeout 인증 타임아웃 대신 쿼리 타임아웃을 설정하자는 connect() 논거

timeout 인자는 이제 인증 시도를 설정 SQL_ATTR_LOGIN_TIMEOUT 하고 제한하며, 이는 인자 이름과 문서가 설명하는 바와 같습니다. 초기 버전에서는 문장별 쿼리 타임아웃 connect(timeout=30) 이 되어 연결 시도 지속 시간을 제한하지 않았고, 30초 후에 쿼리를 중단했습니다. 문장별 쿼리 타임아웃은 속성으로 Connection.timeout 남아 있습니다.

중요합니다

장시간 실행되는 쿼리를 중단하기 위해 timeoutconnect()를 전달했다면, 이제 더 이상 그렇게 동작하지 않습니다. 대신 Connection.timeout으로 설정하세요. bulkcopy()에 의존해 Connection.timeout가 내부 연결에 사용하는 연결 시간 제한을 늘린 경우에도 동일합니다. 커서를 만들기 전에 connect(timeout=)를 설정하세요.

자세한 내용은 연결 타임아웃을 참조하세요.

bulkcopy() 거절됨 timeout=0

0timeout 값은 검증 오류를 발생시켰지만, 기반이 되는 대량 복사 API에서는 0가 타임아웃 없음을 의미합니다. 이 메서드는 이제 0를 허용하며 작업 시간 제한을 비활성화합니다. 음수, 정수가 아닌 값 및 불리언 값은 여전히 허용되지 않습니다.

자세한 내용은 대량 사본을 참조하세요.

클린업이 원래의 Arrow fetch 예외를 대체했습니다

Arrow 리더에서 데이터를 가져오는 데 실패하면 드라이버의 정리 처리 과정에서 두 번째 오류가 발생해 원래 오류를 덮어써, 호출자에게는 가져오기 실패 원인 대신 정리 실패만 보였습니다. 이제 정리는 커서 상태를 먼저 확인하고 원래 예외를 보존합니다.

executemany() 십진법 변환 오류에는 매개변수 값이 포함되어 있습니다

십진수 변환 실패는 executemany() 연쇄된 예외를 통해 문제가 된 값을 보고했으며, 이로 인해 고객 데이터가 애플리케이션 로그 및 모니터링 시스템에 기록될 수 있었습니다. 이제 오류는 행 인덱스, 열 인덱스, 그리고 값 유형만 보고합니다.

자세한 내용은 오류 처리를 참조하세요.

일괄 복사가 거부된 Arrow View 유형

bulkcopy_arrow() 가변 길이 Arrow View 배열을 처리할 수 없었기 때문에, Polars string_view 열은 먼저 DataFrame.to_arrow()로 변환해야 했습니다. 문자열 뷰 값과 NULL은 이제 Arrow C 데이터 인터페이스를 직접 통과합니다.

자세한 내용은 극지 분적을 참조하세요.

Windows 확장 로딩은 호스트 CPU 아키텍처를 사용했습니다

Windows에서는 드라이버가 실행 중인 인터프리터가 아닌 호스트 CPU를 기반으로 네이티브 확장 프로그램을 선택했기 때문에, ARM64 호스트의 x64 Python은 백업 경로를 통해 로드하고 stdout에 공지를 작성했습니다. 로더는 이제 인터프리터에서 아키텍처를 파생하고 대체 신호를 경고로 보고합니다.

MSSQL-Python 1.13.0

출시일: 2026년 8월

Enhancements

ODBC 드라이버 바이너리는 mssql-python-odbc에서만 제공됩니다

버전 1.13.0은 libs/ 휠에서 mssql-python 폴백을 제거하고 mssql-python-odbc==18.6.2.1에서 install_requires를 선언합니다. pip install mssql-python 명령은 여전히 정상적으로 작동하는 드라이버를 생성합니다. mssql-python-odbc로 설치할 때는 --no-deps도 명시적으로 설치하거나, --no-deps를 미러링하지 않는 프라이빗 인덱스에서 설치할 때도 명시적으로 설치하세요.

자세한 내용은 설치를 참조하세요.

Apache Arrow 소스에서 대량 복사

새로운 cursor.bulkcopy_arrow() 방법은 이미 Apache Arrow 형식의 데이터를 불러오지만, 각 행을 먼저 Python 객체로 변환하지 않습니다. 이제 Arrow 소스를 bulkcopy()에 전달하면 TypeError 예외가 발생합니다.

자세한 내용은 Apache Arrow 통합Bulk Copy를 참조하세요.

token_provider Microsoft Entra 자격 증명에 대한 매개 변수

connect() 함수와 token_provider 클래스는 DefaultAzureCredential 인수를 허용하므로, 연결 문자열에 인증 모드를 지정하는 대신 Connection와 같은 자격 증명 객체를 전달할 수 있습니다. 이 인수는 attrs_before 키워드 및 Authentication를 통해 전달된 토큰과 상호 배타적이며, Azure 상용 클라우드 범위에서만 지원됩니다.

자세한 내용은 Microsoft Entra 인증을 참조하세요.

ID 인식형 연결 풀링

연결 풀은 이제 Microsoft Entra 신원에 따라 연결을 분리합니다. 이전 버전에서는 풀이 연결 문자열만을 기준으로 관리되었기 때문에, 한 사용자로 인증된 연결이 다른 사용자의 요청에 반환될 수 있었습니다. 드라이버는 연결 요청이 풀을 놓쳤을 때만 토큰을 획득하고, 토큰이 만료되기 5분 이내에 있을 때 풀된 연결을 갱신합니다.

자세한 내용은 연결 풀링을 참조하세요.

버그 수정

executemany() 첫 번째 행 뒤에 NULL이 나타날 때 0행을 삽입했습니다

비-NULL과 NULL 숫자 값을 혼합한 호출은 executemany() 0행을 삽입하고 첫 번째 NULL이 첫 행 뒤에 나타났을 때 예외를 발생시키지 않았습니다. 이 동작은 tinyint, smallint, int, float 매개변수에 영향을 미쳤습니다. 드라이버는 이제 배열 실행 전에 고정 폭 수치 매개변수마다 ODBC 인디케이터를 초기화합니다.

출력 변환기는 SQL_WVARCHAR 비문자열 열을 변환했습니다

단일 문자열 변환기를 등록하면 정수, 십진수, 날짜 값도 변환되었는데, 이는 드라이버가 자체 변환기가 없는 열에 대해 변환기로 SQL_WVARCHAR 다시 전환되었기 때문입니다. 드라이버는 이제 열의 매핑된 Python 타입이 str 또는 bytes인 경우에만 그 대체 방식을 사용합니다.

정수 SQL 타입 코드로 등록된 출력 변환기는 실행되지 않았습니다

정수 SQL 타입 코드(예: SQL_DECIMAL)로 등록된 변환기는 저장되었으나 호출되지 않았는데, 드라이버가 Python 타입cursor.description으로만 디스패치되기 때문입니다. 드라이버는 이제 먼저 정수 코드를 기준으로 디스패치한 다음, Python 타입을 기준으로 디스패치하고, 그다음 SQL_WVARCHAR 폴백으로 처리합니다.

중요합니다

이전 버전에서 정수 SQL 코드 코드로 변환기를 등록했다면, 업그레이드 후 그 변환기들이 실행되기 시작합니다. 배포 전에 반드시 검토하세요. 이전에 변경되지 않은 컬럼 값들이 변환되기 때문입니다.

자세한 내용은 Custom Type 변환기를 참조하세요.

Arrow 리더를 닫아도 서버 쪽 커서가 해제되지 않았습니다

Arrow 리더를 닫으면 서버 측 커서가 할당된 상태로 남고 부모 Cursor가 일관되지 않은 상태가 되었는데, 이는 cursor.arrow_reader()가 원시 pyarrow.RecordBatchReader를 반환했기 때문입니다. 이 메서드는 이제 서버 측 커서를 해제하고 커서 상태를 초기화하는 래퍼 close() 를 반환하며, 래퍼는 컨텍스트 관리자 역할을 합니다.

자세한 내용은 Apache Arrow 통합을 참조하세요.

부분적으로 초기화된 커서 AttributeErrorCursor.__del__

초기화에 실패한 커서는 가비지 컬렉션 중 AttributeError를 발생시킬 수 없는 예외로 발생시켰습니다.

Cursor.__init__이(가) closedhstmt 속성을 설정하기 전에 발생했고, 이후 __del__가 이를 읽으려고 시도했습니다. 초기화자는 예외를 발생시킬 수 있는 어떤 코드보다 먼저 두 속성을 모두 설정하고, __del__의 로깅 호출을 보호하여 인터프리터 종료 중에도 안전하게 유지되도록 합니다.

MSSQL-파이썬 1.12.0

출시일: 2026년 7월

Enhancements

독립 실행형 mssql-python-odbc 동반자 패키지

ODBC 드라이버 바이너리는 이제 mssql-python-odbc라는 별도로 배포되며, 버전 . 에 고정된 18.6.2데이터 전용 동반 패키지입니다. 코드를 변경할 필요는 없고, 동반 패키지를 함께 설치하기 때문입니다 pip install mssql-python . 네이티브 로더는 동반 패키지를 선호하며, 동반 패키지가 없을 때는 휠 내에 mssql-python 묶인 바이너리로 다시 전환합니다.

자세한 내용은 설치를 참조하세요.

버그 수정

cursor.bulkcopy() 이제 부모 연결의 연결 타임아웃을 사용합니다

bulkcopy()는 이제 connect(..., timeout=<seconds>)로 설정하는 상위 연결의 connect timeout을 사용합니다. 이전에는 대량 복사본이 열리는 별도의 연결은 Python에서 해제할 수 없는 하드코딩된 15초 연결 타임아웃을 사용했습니다. timeout=0로 생성된 부모 연결에도 여전히 15초 기본값이 적용됩니다.

자세한 내용은 대량 사본을 참조하세요.

cursor.bulkcopy() CLR 사용자 정의 타입 열 지원

cursor.bulkcopy()은(는) 이전에 내장된 geography, geometryProtocol Error: Unsupported TDS type for bulk copy: 0xF0 형식을 포함하여 공용 언어 런타임(CLR) 사용자 정의 형식을 사용하는 모든 대상 열에 대해 와(과) 함께 실패했습니다. 드라이버는 이제 CLR UDT 열을 전송 시 varbinary(max)로 매핑하고, 사용자가 제공한 바이트를 UDT의 IBinarySerialize 페이로드로 스트리밍합니다. 이 수정 사항은 mssql_py_core 0.1.7에 포함됩니다.

자세한 내용은 대량 복사데이터 타입 매핑을 참조하세요.

MSSQL-Python 1.11.0

출시일: 2026년 7월

Enhancements

개선된 컨텍스트 매니저 의미론

with connection: 이제 블록이 정상적으로 종료되면 트랜잭션을 커밋하고, 예외가 블록을 벗어나면 롤백합니다.

자세한 내용은 트랜잭션 관리를 참조하세요.

버그 수정

  • SSH 터널 및 인프로세스 포워더 설정에서 ODBC 종료 경로(conn.close()cursor.close())와 SQLDescribeParam 값 매개변수에 대한 None의 GIL 교착 상태를 수정했습니다.
  • 임시 테이블 및 테이블 변수에서 BINARYVARBINARY NULL 매개변수 문제를 수정했습니다. 자동 타입 확인이 실패하면 드라이버는 명시적인 cursor.setinputsizes() 안내가 포함된 Python 경고를 출력합니다.
  • Apple Silicon에서 클린 설치 시 import mssql_python가 실패하던 문제를 수정했습니다(1.8.0에서 발생한 회귀). 번들로 포함된 ODBC dylib 의존성은 이제 두 아키텍처 모두 arm64x86_64 에 맞게 다시 작성되었습니다.
  • Authentication=ActiveDirectoryServicePrincipal로 인증할 때 대량 복사 작업이 멈추던 Rust 코어의 GIL 교착 상태를 수정했습니다.

MSSQL-Python 1.10.0

릴리스 날짜: 2026년 6월

Enhancements

ActiveDirectoryServicePrincipal 대량 복사 지원

cursor.bulkcopy()이제 Authentication=ActiveDirectoryServicePrincipal을(를) 지원하므로 서비스 주체 자격 증명으로 대량 삽입할 수 있습니다.

자세한 내용은 대량 복사Microsoft Entra 인증을 참조하세요.

버그 수정

  • Arrow fetch 경로에 있는 비ASCII VARCHARCHAR 데이터를 고정했습니다.
  • 대량 부하 작업 중 고정된 연결 타임아웃.

MSSQL-파이썬 1.9.0

릴리스 날짜: 2026년 6월

Enhancements

대량 복사의 행 개체

cursor.bulkcopy() 이제 수동 튜플 변환을 요구하는 대신, 가져온 Row 객체를 직접 허용합니다.

자세한 내용은 Bulk CopyRow objects를 참조하세요.

버그 수정

  • 고정된 휠 패키징이라 simdutf 항상 정적으로 연결되어 있습니다.
  • DECIMAL의 대형 executemany() 인서트가 수정됨.
  • NULL 파라미터에 대한 잘못된 타입 폴백을 수정했습니다.
  • 예외 피클링 및 언피클링의 왕복 과정에서 발생하던 문제를 수정했습니다.
  • 결과 집합 전반에서 nextset() 메시지를 유지하도록 PRINT를 수정했습니다.
  • Row 실행 시 데이터 폴백 경로에서 executemany() 처리 문제를 수정했습니다.
  • 정적 분석 도구를 위한 fetch 메서드 타입 검사를 수정했습니다.

MSSQL-파이썬 1.8.0

릴리스 날짜: 2026년 5월

Enhancements

ActiveDirectoryMSI 대량 복사 지원

cursor.bulkcopy() 이제 시스템 할당 및 사용자 지정 관리 신원을 지원합니다 Authentication=ActiveDirectoryMSI .

자세한 내용은 대량 복사Microsoft Entra 인증을 참조하세요.

행 문자열 키 인덱싱

예를 들어 row["col"], 이제 열 이름으로 행 값에 접근할 수 있으며, 위치 인덱싱과 속성 접근도 가능합니다.

자세한 내용은 Row 객체를 참조하세요.

번들 제공된 ODBC 드라이버 업그레이드

번들로 제공된 Microsoft ODBC SQL Server 드라이버는 18.6.2.1로 업데이트되었습니다.

버그 수정

  • 토큰 기반 인증에서 지연된 연결 속성의 수명 문제를 해결했습니다.
  • 인증 경로에서 반복되는 연결 문자열 파싱을 수정했습니다.
  • 시퀀스 입력의 executemany() 타입 주석을 수정했습니다.

MSSQL-Python 1.7.1

릴리스 날짜: 2026년 5월

Enhancements

확대된 휠 커버리지와 성능 향상

이 릴리스에는 다음이 포함되어 있습니다.

  • RHEL 8 호환 휠.
  • macOS Python 3.10 universal2 휠을 복원했습니다.
  • simdutf를 통해 UTF-16 처리가 개선되었습니다.
  • 최적화된 execute() 핫 패스.

성능 영향: 메서드의 execute() 핫 패스 최적화로 인해 배치 실행 처리량이 향상됩니다.

자세한 내용은 설치를 참조하세요.

버그 수정

  • 인증 실패 시 mssql_python 대신 RuntimeError DB-API 예외가 발생하도록 수정했습니다.
  • ODBC 실행, 페치, 트랜잭션, 연결 속성 호출 차단에 걸친 GIL 릴리스 확장.
  • executemany() 소수점 값의 부호가 바뀔 때 발생하던 오류를 수정했습니다.
  • 플랫폼 간 불일치 CP1252 VARCHAR 디코딩을 수정했습니다.
  • cursor.bulkcopy()NVARCHAR(MAX) 열의 빈 문자열로 인한 VARCHAR(MAX) 실패를 수정했습니다.

비고

버전 1.7.0은 출판 문제로 인해 철회되었습니다. 버전 1.7.1 이상을 사용하세요.

MSSQL-Python 1.6.0

릴리스 날짜: 2026년 4월

Enhancements

파서 기반 연결 문자열 정제

연결 문자열 소결과 이제 정규 표현식 대신 파서를 사용하여, 비밀번호 필드와 브레이시드 값에 특수 문자가 포함된 연결 문자열도 올바르게 파싱됩니다.

자세한 내용은 커넥션 문자열 참조하세요.

버그 수정

  • ODBC 연결 및 분리 작업 차단 시 고정된 GIL 해제.
  • setinputsizes()SQL_DECIMAL 힌트 사용 시 발생하던 SQL_NUMERIC 충돌을 수정했습니다.
  • ODBC 카탈로그 메서드에 대한 잘못된 fetchone() 동작을 수정했습니다.
  • 사용 시 reset_cursor=False 유효하지 않은 커서 상태 오류를 수정했습니다.
  • 매핑 기반 매개변수 시퀀스를 위한 고정 executemany() 타입 힌트.
  • setup_logging(log_file_path=...)에 대한 경로 순회 방지 기능을 추가했습니다.

MSSQL-파이썬 1.5.0

릴리스 날짜: 2026년 4월

새로운 기능

Apache Arrow 가져오기 지원

세 가지 새로운 커서 메서드가 Arrow C 데이터 인터페이스를 통해 고성능 컬럼 데이터 검색을 제공합니다:

  • cursor.arrow()은(는) 완전한 pyarrow.Table을(를) 반환합니다.
  • cursor.arrow_batch() 단일 pyarrow.RecordBatch를 반환합니다.
  • cursor.arrow_reader()는 스트리밍용으로 pyarrow.RecordBatchReader를 반환합니다.

이 메서드들은 각 값마다 Python 객체를 생성하지 않습니다. 전체 문서는 Apache Arrow 통합을 참조하세요.

sql_variant 타입 지원

드라이버는 이제 가져올 때 sql_variant 열을 감지하고, 그 기저 기본 유형을 해석하여 원시 바이트 대신 올바른 형식의 Python 값을 반환합니다.

비고

sql_variant 컬럼은 스트리밍 페치 경로를 사용하는데, 고정형 컬럼에 비해 약간의 성능 저하가 있을 수 있습니다.

자세한 내용은 데이터 형식 매핑을 참조하세요.

네이티브 UUID 지원

새로운 native_uuid 설정은 UNIQUEIDENTIFIER 열이 uuid.UUID 객체(기본값)로 반환될지, 아니면 pyodbc와 호환되는 대문자 문자열로 반환될지를 제어합니다. 모듈 단위나 연결별로 설정하세요.

자세한 내용은 모듈 구성을 참조하세요.

로우 클래스 공공 수출

Row 클래스는 이제 타입 주석을 위해 최상위 수준에서 내보내집니다.

자세한 내용은 Row 객체를 참조하세요.

버그 수정

  • 괄호로 묶인 식별자, 문자열 리터럴 및 주석 내부의 ? 오탐지를 수정했습니다.
  • 열에 VARBINARY 대한 NULL 매개변수 바인딩을 고정했습니다(암묵적 변환 오류를 더 이상 발생시키지 않음).
  • datetime.time부터 TIME(1) 열까지의 TIME(7) 값이 왕복 변환 시 마이크로초를 잃는 문제를 수정했습니다.
  • TIME 열에 대해 소수점 이하 초가 올바르게 포함되도록 Arrow 가져오기 경로를 수정했습니다.
  • Microsoft Entra ID 인증 방법으로 대량 사본을 고정했습니다(오래된 자격 증명 필드는 더 이상 검증 오류를 일으키지 않습니다).
  • 인증 성능 향상을 위해 모듈 수준에서 캐시된 Azure Identity 자격 증명 인스턴스를 도입했습니다.

MSSQL-Python 1.4.0

출시일: 2026년 2월

새로운 기능

대량 복사 지원

고성능 대량 데이터 로딩이 이제 .을 통해 cursor.bulkcopy()제공됩니다. 이 방법은 , batch_size, timeoutcolumn_mappingskeep_identitycheck_constraintstable_lock, keep_nullsfire_triggersuse_internal_transaction에 대한 선택지를 받아들입니다.

자세한 내용은 대량 사본을 참조하세요.

개선 사항

  • 대규모 결과 세트에 대한 성능 최적화.
  • 배치 작업 중 메모리 사용량을 줄였습니다.
  • 대량 복사 실패에 대한 향상된 오류 메시지.

MSSQL-Python 1.3.0

출시일: 2026년 1월

새로운 기능

설정 클래스

새로운 Settings 클래스를 통해 모듈 전체 동작을 구성하며, 이 클래스에는 . cursor.description의 열 이름 설정도 포함됩니다lowercase.

자세한 내용은 모듈 구성을 참조하세요.

개선 사항

  • Azure SQL 장애 조치 중 연결 타임아웃 처리가 더 좋아졌습니다.
  • Python 3.13과의 호환성 향상.

MSSQL-Python 1.2.0

출시일: 2026년 1월

새로운 기능

스키마 발견 방법

새로운 커서 메서드는 데이터베이스 메타데이터를 탐색합니다: tables(), columns(), , foreignKeys()primaryKeys(), procedures(), statistics(), .getTypeInfo()

자세한 내용은 스키마 발견을 참조하세요.

개선 사항

  • 반복 스키마 쿼리를 위한 향상된 메타데이터 캐싱.
  • 결과의 columns() 계산 열 처리가 개선되었습니다.

MSSQL-Python 1.1.0

개봉일: 2025년 12월

새로운 기능

맞춤형 출력 변환기

가져오는 동안 열 값을 변환할 수 있도록 add_output_converter(), get_output_converter(), remove_output_converter(), clear_output_converters()와 함께 사용자 지정 함수를 등록합니다.

자세한 내용은 Custom Type 변환기를 참조하세요.

개선 사항

  • 타입 변환 실패에 대한 더 나은 오류 메시지.
  • None를 반환하는 변환 함수 지원

MSSQL-Python 1.0.0

출시일: 2025년 11월

최초 GA 출시

Microsoft의 SQL Server용 네이티브 Python 드라이버인 mssql-python의 첫 번째 일반 출시 릴리스입니다.

자세한 내용은 mssql-python 드라이버를 참조하세요.

핵심 기능

  • DDBC 아키텍처: ODBC 드라이버 설치 없이 직접 데이터베이스 연결.
  • DB-API 2.0 준수: 표준 Python 데이터베이스 인터페이스.
  • 연결 풀링: 내장된 연결 풀 관리.
  • Microsoft Entra 인증: Azure 신원 기반 인증에 대한 완전한 지원.
  • TLS 암호화: 인증서 검증이 포함된 안전한 연결.

연결 기능

  • 21개의 연결 문자열 키워드.
  • 9가지 인증 모드(SQL, Windows, 7가지 Microsoft Entra ID 방식)를 지원합니다.
  • 자동 커밋 제어.
  • 실행 방법: execute(), executemany(), 그리고 batch_execute().
  • set_attr()getinfo()을 통한 연결 속성.
  • 컨텍스트 매니저 지원.

커서 기능

  • 표준 가져오기 방법: fetchone(), , fetchmany()fetchall().
  • 확장 방법: fetchval(), skip().
  • 실행 방법: execute() 그리고 executemany().
  • 속성과 인덱스 접근 권한이 있는 행 객체들.
  • nextset()를 사용한 다중 결과 집합 탐색

데이터 형식 지원

  • 모든 SQL Server 네이티브 타입입니다.
  • Python↔SQL 타입 매핑.
  • 명시적 타입 지정을 위한 SQL 타입 상수(예: mssql_python.SQL_DECIMAL).
  • PythonNone으로서 NULL 처리를 수행합니다.

트랜잭션 지원

  • 수동 커밋과 롤백.
  • 자동 커밋 모드.
  • 격리 수준 제어.
  • 교착 상태 감지 및 처리.

인증 모드

Mode 설명
SQL Server 인증 사용자 이름 및 암호
Windows 인증 Trusted_Connection
ActiveDirectoryDefault DefaultAzureCredential
ActiveDirectoryInteractive 브라우저 기반 로그인
액티브디렉토리 디바이스코드 디바이스 코드 흐름
ActiveDirectoryPassword Microsoft Entra 사용자 이름과 비밀번호 (폐기됨; ROPC를 사용)
액티브디렉터리MSI 관리형 아이덴티티
ActiveDirectoryServicePrincipal 서비스 주체
Active Directory 통합 Windows 케르베로스

Upgrade

pyodbc에서

자세한 마이그레이션 가이드는 'pyodbc에서 마이그레이션'을 참조하세요.

주요 차이점:

  • (qmark)와 ? (pyformat) 매개변수 스타일 모두 %(name)s 지원됩니다. 기존 ? 쿼리는 변경 없이 작동합니다.
  • callproc() 메서드가 없습니다. 대신 EXECUTE 문을 사용하세요.
  • 기본 제공 연결 풀링.
  • 외부 ODBC 드라이버 의존성도 없습니다.

pymssql에서

자세한 마이그레이션 지침은 'Migrate from pymssql'을 참조하세요.

주요 차이점:

  • %s%d 매개변수 마커를 ? 또는 %(name)s로 바꿉니다.
  • 위치 인수 대신 연결 문자열을 사용하세요.
  • FreeTDS 의존성은 없습니다.
  • 연결마다 여러 커서가 동시에 존재합니다.
  • 속성 접근이 가능한 행 객체가 as_dict=True를 대체합니다.

mssql-python 버전 간

드라이버를 업그레이드하면 새로운 기능과 수정이 추가됩니다.

pip install --upgrade mssql-python

운영 시스템을 업그레이드하기 전에 릴리스 노트에서 결정적인 변경 사항이 있는지 확인하세요.

로드맵

향후 기능과 개발 로드맵은 GitHub 저장소를 참조하세요.