연결된 서버에서 테이블을 업데이트 할 때 "트랜잭션 인터페이스"오류

핀탕

SQL Server db에서 연결된 서버 인 db2 데이터베이스를 업데이트하려고 할 때이 오류가 발생합니다.

ERROR : root :( '42000', '[42000] [Microsoft] [ODBC SQL Server Driver] [SQL Server] 연결된 서버 "iSeries"에 대한 OLE DB 공급자 "IBMDA400"이 지원하지 않기 때문에 요청한 작업을 수행 할 수 없습니다. 필수 트랜잭션 인터페이스. (7390) (SQLExecDirectW) ')

pyodbc를 통해 SQL 서버에 연결 중이며 문제없이 SQL 스크립트를 실행할 수 있습니다. 다음은 오류가 발생한 SQL입니다.

sql3 = " exec ('UPDATE SVCEN2DEV.SRVMAST SET SVRMVD = ? WHERE svtype != ''*DCS-'' AND svcid = ? and svacct = ? ') AT [iSeries]"
db.execute(sql3, (row[2],srvid,row[0]))
db.commit()

그리고 여기에 pyodbc를 사용하는 연결 문자열이 있습니다.

conn = pyodbc.connect("DRIVER={SQL Server};SERVER="+ Config_Main.dbServer +";DATABASE="+ Config_Main.encludeName +";UID="+ Config_Main.encludeUser +";PWD=" + Config_Main.encludePass)
db = conn.cursor()

또한이 쿼리는 SSMS에서 잘 실행됩니다. 나는 또한 openquery 메서드를 시도했지만 운이 없었습니다. 어떤 아이디어?

고드 톰슨

Python의 DB API 2.0 은 기본적으로 연결이 자동 커밋 "off"로 열리도록 지정합니다. 이로 인해 모든 데이터베이스 작업이 Python 코드에서 명시 적으로 커밋 (또는 롤백)되어야하는 트랜잭션에서 수행됩니다.

pyodbc 연결 autocommit = False(기본값)이 SQL Server에 UPDATE를 보내면 해당 UPDATE는 SQL Server에서 관리하는 로컬 트랜잭션에 포함됩니다. SQL Server는 대상 테이블이 연결된 서버에 있음을 확인하면 트랜잭션을 MSDTC에서 관리하는 분산 트랜잭션으로 승격 시키려고합니다 . 연결된 서버를 관리하는 데 사용되는 연결 기술이 분산 트랜잭션을 지원하지 않으면 작업이 실패합니다.

이 문제는 pyodbc 연결에 자동 커밋이 활성화되어 있는지 확인하여 피할 수 있습니다.

cnxn = pyodbc.connect(conn_str, autocommit=True)

또는

cnxn = pyodbc.connect(conn_str)
cnxn.autocommit = True

암시 적 트랜잭션에 래핑되지 않고 각 SQL 문을 개별적으로 보냅니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

로컬 네트워크에서 MariaDB 서버에 연결할 때 명명 된 파이프 공급자 오류

분류에서Dev

분리 된 시나리오에서 독립 연결을 사용할 때 일대 다 엔터티 업데이트

분류에서Dev

AngularJS에서 페이지를 새로 고친 후 crud 테이블을 업데이트 할 때 유형 오류

분류에서Dev

서버를 17.04로 업데이트 할 때 오류 발생

분류에서Dev

서버를 17.04로 업데이트 할 때 오류 발생

분류에서Dev

다른 테이블 레코드를 사용하여 테이블을 업데이트 할 때 쿼리 식의 구문 오류 (누락 된 연산자)

분류에서Dev

SQL Server : 서버에 연결할 때 오류 26이 발생합니다.

분류에서Dev

Android, socket.io, 핸드 쉐이킹 중 오류, nodejs 서버에 연결할 때

분류에서Dev

QAbstractListModel에서 QListView를 업데이트 할 때 CPU 오버로드

분류에서Dev

MySQL 오류 :이 저장된 함수 / 트리거를 호출 한 문에서 이미 사용하고 있기 때문에 저장된 함수 / 트리거에서 테이블 'tbl'을 업데이트 할 수 없습니다.

분류에서Dev

MySQL 오류 :이 저장된 함수 / 트리거를 호출 한 문에서 이미 사용하고 있기 때문에 저장된 함수 / 트리거에서 테이블 'tbl'을 업데이트 할 수 없습니다.

분류에서Dev

라이브 서버에서 npm을 업데이트하려고 할 때 오류가 발생합니까?

분류에서Dev

테이블을 업데이트하려고 할 때 데이터베이스에서 오류 메시지가 나타납니다.

분류에서Dev

연결 문자열에서 db 이름을 사용할 때 Mongoose 연결 오류

분류에서Dev

다른 테이블의 값으로 행을 업데이트 할 때 Postgres 오류

분류에서Dev

.net 앱을 새 서버로 이동할 때 SQL Server 연결 오류

분류에서Dev

MongoDB : 구성 서버를 복제 세트로 업그레이드 할 때 연결 문자열 오류

분류에서Dev

DataGridView에서 데이터를 업데이트 할 때 오류 발생

분류에서Dev

시스템에서 오래된 버전의 bash가 발견되었습니다! sdkman을 업데이트 할 때

분류에서Dev

Docker 컨테이너에서 SQL Server에 연결할 때 오류 발생

분류에서Dev

게시 된 오류에서 cloudformation 스택을 업데이트 할 때 롤백 오류가 AWS CLI를 사용할 때 발생 함

분류에서Dev

데이터베이스 테이블에 연결하려고 할 때 런타임 오류

분류에서Dev

연결된 서버에서 sshd 서버를 다시 시작할 때 연결이 끊어지지 않는 이유

분류에서Dev

postgresql 데이터베이스에 연결할 때 MATLAB 오류

분류에서Dev

MongoDB 데이터베이스에 연결할 때 Mongoose 오류

분류에서Dev

테이블을 업데이트 할 때 UITableViewCell setFrame "버그 됨"

분류에서Dev

JDBC를 사용하여 원격 MySQL (호스트 게이터) 서버에 연결할 때 오류 발생

분류에서Dev

Microsoft Word에서 테이블을 조정하려고 할 때마다 오류가 발생하므로 MS Word에서이 오류를 해결하는 방법

분류에서Dev

CLion (MacOS)에서 OpenGL 및 GLUT 라이브러리를 사용할 때 연결된 오류

Related 관련 기사

  1. 1

    로컬 네트워크에서 MariaDB 서버에 연결할 때 명명 된 파이프 공급자 오류

  2. 2

    분리 된 시나리오에서 독립 연결을 사용할 때 일대 다 엔터티 업데이트

  3. 3

    AngularJS에서 페이지를 새로 고친 후 crud 테이블을 업데이트 할 때 유형 오류

  4. 4

    서버를 17.04로 업데이트 할 때 오류 발생

  5. 5

    서버를 17.04로 업데이트 할 때 오류 발생

  6. 6

    다른 테이블 레코드를 사용하여 테이블을 업데이트 할 때 쿼리 식의 구문 오류 (누락 된 연산자)

  7. 7

    SQL Server : 서버에 연결할 때 오류 26이 발생합니다.

  8. 8

    Android, socket.io, 핸드 쉐이킹 중 오류, nodejs 서버에 연결할 때

  9. 9

    QAbstractListModel에서 QListView를 업데이트 할 때 CPU 오버로드

  10. 10

    MySQL 오류 :이 저장된 함수 / 트리거를 호출 한 문에서 이미 사용하고 있기 때문에 저장된 함수 / 트리거에서 테이블 'tbl'을 업데이트 할 수 없습니다.

  11. 11

    MySQL 오류 :이 저장된 함수 / 트리거를 호출 한 문에서 이미 사용하고 있기 때문에 저장된 함수 / 트리거에서 테이블 'tbl'을 업데이트 할 수 없습니다.

  12. 12

    라이브 서버에서 npm을 업데이트하려고 할 때 오류가 발생합니까?

  13. 13

    테이블을 업데이트하려고 할 때 데이터베이스에서 오류 메시지가 나타납니다.

  14. 14

    연결 문자열에서 db 이름을 사용할 때 Mongoose 연결 오류

  15. 15

    다른 테이블의 값으로 행을 업데이트 할 때 Postgres 오류

  16. 16

    .net 앱을 새 서버로 이동할 때 SQL Server 연결 오류

  17. 17

    MongoDB : 구성 서버를 복제 세트로 업그레이드 할 때 연결 문자열 오류

  18. 18

    DataGridView에서 데이터를 업데이트 할 때 오류 발생

  19. 19

    시스템에서 오래된 버전의 bash가 발견되었습니다! sdkman을 업데이트 할 때

  20. 20

    Docker 컨테이너에서 SQL Server에 연결할 때 오류 발생

  21. 21

    게시 된 오류에서 cloudformation 스택을 업데이트 할 때 롤백 오류가 AWS CLI를 사용할 때 발생 함

  22. 22

    데이터베이스 테이블에 연결하려고 할 때 런타임 오류

  23. 23

    연결된 서버에서 sshd 서버를 다시 시작할 때 연결이 끊어지지 않는 이유

  24. 24

    postgresql 데이터베이스에 연결할 때 MATLAB 오류

  25. 25

    MongoDB 데이터베이스에 연결할 때 Mongoose 오류

  26. 26

    테이블을 업데이트 할 때 UITableViewCell setFrame "버그 됨"

  27. 27

    JDBC를 사용하여 원격 MySQL (호스트 게이터) 서버에 연결할 때 오류 발생

  28. 28

    Microsoft Word에서 테이블을 조정하려고 할 때마다 오류가 발생하므로 MS Word에서이 오류를 해결하는 방법

  29. 29

    CLion (MacOS)에서 OpenGL 및 GLUT 라이브러리를 사용할 때 연결된 오류

뜨겁다태그

보관