>백엔드 개발 >파이썬 튜토리얼 >mysql 데이터베이스와 mysql 데이터베이스 간 쿼리를 배우는 방법을 알아내는 데 도움이 되는 세 가지 기사

mysql 데이터베이스와 mysql 데이터베이스 간 쿼리를 배우는 방법을 알아내는 데 도움이 되는 세 가지 기사

Tomorin
Tomorin원래의
2018-08-16 13:54:422766검색

우리는 이전에 "mysql 데이터베이스를 배우고 mysql 라이브러리에서 테이블을 생성하는 방법을 배우는 데 도움이 되는 세 가지 기사"를 통해 mysql 데이터베이스 학습을 공부했습니다. 이제 mysql 데이터베이스 학습 주요 지식 포인트 - mysql을 진행하겠습니다. 데이터베이스 간 쿼리.

mysql 데이터베이스 간 쿼리를 배우기 전에 먼저 데이터베이스 삽입 작업을 배워야 합니다.

다음 예에서는 SQL INSERT 문을 사용하여 EMPLOYEE 테이블에 레코드를 삽입합니다.

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "TESTDB", charset='utf8' )

# 使用cursor()方法获取操作游标 
cursor = db.cursor()

# SQL 插入语句
sql = """INSERT INTO EMPLOYEE(FIRST_NAME,
         LAST_NAME, AGE, SEX, INCOME)
         VALUES ('Mac', 'Mohan', 20, 'M', 2000)"""

try:
   # 执行sql语句
   cursor.execute(sql)
   # 提交到数据库执行
   db.commit()
except:
   # Rollback in case there is any error
   db.rollback()
# 关闭数据库连接
db.close()

데이터베이스 쿼리 작업

Python은 단일 데이터 조각을 얻기 위해 fetchone() 메서드를 사용하고 여러 데이터 조각을 얻기 위해 fetchall() 메서드를 사용하여 MySQL을 쿼리합니다.

1.fetchone(): 이 메소드는 다음 쿼리 결과 세트를 가져옵니다. 결과 세트는 객체입니다.

2.fetchall(): 반환된 모든 결과 행을 받습니다.

3.rowcount: 이는 읽기 전용 속성이며 Execute() 메서드를 실행한 후 영향을 받은 행 수를 반환합니다.

예:

EMPLOYEE 테이블에서 급여 필드가 1000보다 큰 모든 데이터 쿼리:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "TESTDB", charset='utf8' )

# 使用cursor()方法获取操作游标 
cursor = db.cursor()

# SQL 查询语句
sql = "SELECT * FROM EMPLOYEE \
       WHERE INCOME > '%d'" % (1000)
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 获取所有记录列表
   results = cursor.fetchall()
   for row in results:
      fname = row[0]
      lname = row[1]
      age = row[2]
      sex = row[3]
      income = row[4]
      # 打印结果
      print "fname=%s,lname=%s,age=%d,sex=%s,income=%d" % \       
            (fname, lname, age, sex, income )
except:
   print "Error: unable to fecth data"
   
关闭数据库连接
db.close()


위 내용은 mysql 데이터베이스와 mysql 데이터베이스 간 쿼리를 배우는 방법을 알아내는 데 도움이 되는 세 가지 기사의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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