Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python의 데이터베이스 읽기 작업

<시간/>

모든 데이터베이스에 대한 READ 작업은 데이터베이스에서 유용한 정보를 가져오는 것을 의미합니다.

데이터베이스 연결이 설정되면 이 데이터베이스에 쿼리할 준비가 됩니다. fetchone()을 사용할 수 있습니다. 단일 레코드를 가져오는 메소드 또는 fetchall() 데이터베이스 테이블에서 여러 값을 가져오는 방법입니다.

  • 페원() − 쿼리 결과 집합의 다음 행을 가져옵니다. 결과 집합은 커서 개체를 사용하여 테이블을 쿼리할 때 반환되는 개체입니다.
  • fetchall() − 결과 집합의 모든 행을 가져옵니다. 결과 집합에서 일부 행이 이미 추출된 경우 결과 집합에서 나머지 행을 검색합니다.
  • 행 수 − 이것은 읽기 전용 속성이며 execute() 메서드의 영향을 받은 행 수를 반환합니다.

예시

다음 절차는 급여가 1000 이상인 EMPLOYEE 테이블의 모든 레코드를 쿼리합니다. -

#!/usr/bin/python
import MySQLdb
# Open database connection
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )
# prepare a cursor object using cursor() method
cursor = db.cursor()
sql = "SELECT * FROM EMPLOYEE \
   WHERE INCOME > '%d'" % (1000)
try:
   # Execute the SQL command
   cursor.execute(sql)
   # Fetch all the rows in a list of lists.
   results = cursor.fetchall()
   for row in results:
      fname = row[0]
      lname = row[1]
      age = row[2]
      sex = row[3]
      income = row[4]
      # Now print fetched result
      print "fname=%s,lname=%s,age=%d,sex=%s,income=%d" % \ (fname, lname, age, sex, income )
except:
   print "Error: unable to fecth data"
# disconnect from server
db.close()
에서

출력

이것은 다음과 같은 결과를 생성합니다 -

fname=Mac, lname=Mohan, age=20, sex=M, income=2000