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

Python의 데이터베이스 INSERT 작업

<시간/>

데이터베이스 테이블에 레코드를 생성하고자 할 때 필요합니다.

예시

다음 예는 SQL INSERT 문을 실행하여 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()
# Prepare SQL query to INSERT a record into the database.
sql = """INSERT INTO EMPLOYEE(FIRST_NAME,
   LAST_NAME, AGE, SEX, INCOME)
   VALUES ('Mac', 'Mohan', 20, 'M', 2000)"""
try:
   # Execute the SQL command
   cursor.execute(sql)
   # Commit your changes in the database
   db.commit()
except:
   # Rollback in case there is any error
   db.rollback()
# disconnect from server
db.close()

위의 예는 SQL 쿼리를 동적으로 생성하기 위해 다음과 같이 작성할 수 있습니다. -

#!/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()
# Prepare SQL query to INSERT a record into the database.
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, \
   LAST_NAME, AGE, SEX, INCOME) \
   VALUES ('%s', '%s', '%d', '%c', '%d' )" % \
   ('Mac', 'Mohan', 20, 'M', 2000)
try:
   # Execute the SQL command
   cursor.execute(sql)
   # Commit your changes in the database
   db.commit()
except:
   # Rollback in case there is any error
   db.rollback()
# disconnect from server
db.close()

예시

다음 코드 세그먼트는 매개변수를 직접 전달할 수 있는 또 다른 형태의 실행입니다. −

..................................
user_id = "test123"
password = "password"
con.execute('insert into Login values("%s", "%s")' % \
   (user_id, password))
..................................