첫번째
import pymysql
db = pymysql.connect('localhost','root','','MyFirst') # MyFirst
cursor = db.cursor() # cursor, cursor.execute() mysql 。
cursor.execute("select version()") # select version()
data = cursor.fetchone()
print("database version : %s" % data)
db.close()
설명하자면cursor:cursor는 커서 대상이라고 하는데python과 mysql 고속을 연결하는 열차에 해당한다.cursor를 통해 데이터의 상호작용을 한다.
일반적인 방법:close (): 이 커서 대상fetchone 닫기 (): 결과 집합을 얻은 다음 줄fetchmany ([size =cursor.arraysize]): 결과 집합을 얻은 다음 줄fetchall (): 결과 집합을 얻은 다음 줄fetchall (): 결과 집합을 얻은 나머지 모든 줄
excute(sql,args]): 데이터베이스 조회나 명령을 실행합니다. excutemany(sql,args): 여러 데이터베이스 조회나 명령을 실행합니다.
이 예는 그래도 비교적 간단하다.
1. 테이블에 내용을 삽입한다.
import pymysql
db = pymysql.connect("localhost","root","","MyFirst" )
cursor = db.cursor()
#
sql = """INSERT INTO EMPLOYEE2(FIRST_NAME,
LAST_NAME, AGE, SEX, INCOME)
VALUES ('Mac', 'Mohan', 20, 'M', 2000)"""
try:
# sql
cursor.execute(sql)
#
db.commit()
except:
#
db.rollback()
#
db.close()
mysql에 대해 말하자면 업무를 지원하는 저장 엔진을 사용한다면 매번 조작한 후에commit는 필수적이다. 그렇지 않으면 데이터베이스에 진정으로 쓰지 않고 롤백에 대응하는 스크롤을 할 수 있지만 롤백 이후에는 롤백을 할 수 없다.commit () 는 많은 ql 명령을 실행한 후에 다시 호출할 수 있으며, 이렇게 하면 적당히 성능을 향상시킬 수 있다.
2. 데이터베이스 조회 조작
import pymysql
#
db = pymysql.connect("localhost","root","","MyFirst" )
# 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 fetch data")
#
db.close()
키워드:
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > '%d'" % (1000)
3. 데이터베이스 업데이트 작업:
sql = "UPDATE EMPLOYEE SET AGE = AGE + 1
WHERE SEX = '%c'" % ('M')
4. 삭제 작업:
sql = "UPDATE EMPLOYEE SET AGE = AGE + 1
WHERE SEX = '%c'" % ('M')
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.