>  기사  >  백엔드 개발  >  Python이 DB2 데이터베이스에 연결됩니다.

Python이 DB2 데이터베이스에 연결됩니다.

高洛峰
高洛峰원래의
2017-02-25 09:54:283897검색

DB2는 미국 IBM이 개발한 관계형 데이터베이스 관리 시스템으로, 주요 운영 환경은 UNIX(IBM 자체 AIX 포함), Linux, IBM i(이전의 OS/400), z/OS 및 Windows입니다. 서버 버전. 오늘은 Python을 사용하여 DB2 데이터베이스에 연결하는 방법에 대해 논의하겠습니다.

작업 중에 이런 상황이 발생했습니다. 프로젝트를 IBM의 관계형 데이터베이스(DB2)에 연결해야 하는 경우가 있습니다. 그 중 ibm_db는 비교적 사용하기 쉬운 라이브러리이고, 인터넷에 튜토리얼도 있지만 정확하지 않고, 상세하지도 않고, 오류가 많은 것 같아서 구할 수 밖에 없었습니다. 소스코드를 직접 분석해서 해결했습니다.

설치

환경 요구 사항:

첫 번째는 데이터베이스 DB2입니다. Baidu에서 직접 다운로드하고, 이 두 파일을 다운로드했습니다. :

Python이 DB2 데이터베이스에 연결됩니다.

아직 Linux에서는 테스트해보지 않았습니다.

데이터베이스 API(오랫동안 찾고 있었는데 마침내 올바른 것을 찾았습니다.) (검색을 찾을 수 없습니다: SQLAPI.zip)

Python2.7

VCForPython2.7

ibm_db(기본 라이브러리인 ntx64_odbc_cli 라이브러리는 설치 중에 다운로드되며 IBM_DB_HOME 변수는 설치 중에 감지되므로 데이터베이스를 먼저 설치해야 합니다. ibm_db 설치)

위 모듈은 온라인에서 찾을 수 있으므로 직접 다운로드하여 설치하시기 바랍니다.

명령줄 프로세서 열기: (관리자 ID)

Enter ? Enter를 직접 누르면 명령 목록이 표시됩니다. 데이터베이스 관리자를 열고:

Python이 DB2 데이터베이스에 연결됩니다.

데이터베이스를 구축하려면 db2 data studio를 사용하는 것이 더 편리합니다. 설치 디렉터리 중 루트 디렉터리에 임시 생성하고 파일의 압축을 푼 후 Windows 7과 호환되도록 install.exe 속성을 수정하고 설치 후 왼쪽을 클릭하여 생성합니다. 새로운 데이터베이스.

Python이 DB2 데이터베이스에 연결됩니다.

위의 방법으로 데이터베이스 설치 시 설정한 사용자 이름과 비밀번호를 사용하세요.

인스턴스가 성공적으로 구성되고 테스트되면 데이터베이스를 생성할 수 있습니다.

Python이 DB2 데이터베이스에 연결됩니다.

데이터베이스 이름과 별칭만 적어주세요. 나머지는 테스트용이므로 채워지지 않습니다. 실행을 눌러 생성이 진행되는데 10분 정도 소요되었습니다.

테이블을 생성하는 과정은 아래에서 자세히 설명하지 않습니다. 테이블을 생성하기 전에 먼저 스키마를 생성하고 사용자 정의 스키마를 사용하여 테이블을 생성해야 한다는 점을 기억하는 것이 중요합니다.

Python이 DB2 데이터베이스에 연결됩니다.

연결

라이브러리를 직접 연결하고 가져옵니다

ibm_db_dbi를 가져옵니다.

import ibm_db_dbi

conn = ibm_db_dbi.connect(“PORT=50000;PROTOCOL=TCPIP;”, host=db[“host”], database=db[“database”], user=db[“user”],

password=db[“passwd”])

conn.set_autocommit(True)

cursor = conn.cursor()
Python이 DB2 데이터베이스에 연결됩니다.

데이터베이스에 연결하여 자동 제출 설정

Query

sql = “select * from testable”

result = cursor.execute(sql)

위 쿼리 방법이 잘못되었으니 참고하세요. 정답은 다음과 같습니다.

sql = “select * from MYSCHEMA.TESTTABLE” 


result = cursor.execute(sql) rows = cursor.fetchall()

여기서도 조작은 MySQL과 다르지 않습니다

이 곳은 몇 시간 동안 멈췄어요, T_T

insert

sql = “insert into MYSCHEMA.TESTTABLE (“uuid”, “content”) values (‘%s', %s)” % (“1234567890”, “asdfghjkl”)

result = cursor.execute(sql)

update

sql = “update \”MYSCHEMA\”.\”TESTTABLE \” set \”content\” = ‘%s' where \”uuid\” = ‘%s'” % (

“aaa”, “1234567890”)

result = cursor.execute(sql)

작업이 성공하면 결과는 True입니다. 각 문의 따옴표에 주의하세요. 홀수와 짝수는 위와 같은 방식으로 이루어져야 합니다.

위 내용은 이 글에서 공유한 DB2 데이터베이스에 연결하기 위해 Python을 사용한 전체 내용입니다. 친구들에게 도움이 되었으면 좋겠습니다.

Python을 DB2 데이터베이스에 연결하는 것과 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.