Python3 : เชื่อมต่อกับฐานข้อมูล
Db มีหลายยี่ห้อ แต่ละยี่ห้อมี api ของตัวเอง
python เลยมี Python DB Api ของตัวเองเป็นตัวกลาง(PEP249)
DatabaseModule ที่ทำตาม PythonDbApi
จะมี 3 properties
-apilevel
-threadsafety
-paramstyle
ต้องมีการ connect เพื่อสร้าง session
curror object ใน python ใช้สำหรับการ excute query
และทดสอบผลลัพธ์
ใช้ query แล้ว อย่าลืม commit()
Type ชนิดต่างๆ เพื่อใช้ให้ตรงกับ Database เช่น STRING,NUMBER,DATETIME
Python 2.5 มี PySQLite ที่ผนวกรวม SQLite มาด้วย เว้นแต่ compile python เอาเอง
### Example Code จากหนังสือ Beginning Python From Novice to Professional, Second Edition
import sqlite3
def convert(value):
if value.startswith('~'):
return value.strip('~')
if not value:
value = '0'
return float(value)
conn = sqlite3.connect('food.db')
curs = conn.cursor()
curs.execute('''
CREATE TABLE food (
id TEXT PRIMARY KEY,
desc TEXT,
water FLOAT,
kcal FLOAT,
protein FLOAT,
fat FLOAT,
ash FLOAT,
carbs FLOAT,
fiber FLOAT,
sugar FLOAT
)
''')
query = 'INSERT INTO food VALUES (?,?,?,?,?,?,?,?,?,?)'
#for line in open('ABBREV.txt'):
# fields = line.split('^')
# vals = [convert(f) for f in fields[:field_count]]
# curs.execute(query, vals)
conn.commit()
conn.close()
...............................................................
เชื่อมกับ MySQL..
step1. ติดตั้ง MySQLdb Module ด้วยคำสั่ง
py -m pip install mysqlclient
**ก่อน python3 จะติดตั้งด้วยคำสั่ง pip install MySQL-python #เก่าไปแล้ว
step2. ทำตามตัวอย่างได้จากในเว็บนี้
https://www.tutorialspoint.com/python/python_database_access.htm
python เลยมี Python DB Api ของตัวเองเป็นตัวกลาง(PEP249)
DatabaseModule ที่ทำตาม PythonDbApi
จะมี 3 properties
-apilevel
-threadsafety
-paramstyle
ต้องมีการ connect เพื่อสร้าง session
curror object ใน python ใช้สำหรับการ excute query
และทดสอบผลลัพธ์
ใช้ query แล้ว อย่าลืม commit()
Type ชนิดต่างๆ เพื่อใช้ให้ตรงกับ Database เช่น STRING,NUMBER,DATETIME
Python 2.5 มี PySQLite ที่ผนวกรวม SQLite มาด้วย เว้นแต่ compile python เอาเอง
### Example Code จากหนังสือ Beginning Python From Novice to Professional, Second Edition
import sqlite3
def convert(value):
if value.startswith('~'):
return value.strip('~')
if not value:
value = '0'
return float(value)
conn = sqlite3.connect('food.db')
curs = conn.cursor()
curs.execute('''
CREATE TABLE food (
id TEXT PRIMARY KEY,
desc TEXT,
water FLOAT,
kcal FLOAT,
protein FLOAT,
fat FLOAT,
ash FLOAT,
carbs FLOAT,
fiber FLOAT,
sugar FLOAT
)
''')
query = 'INSERT INTO food VALUES (?,?,?,?,?,?,?,?,?,?)'
#for line in open('ABBREV.txt'):
# fields = line.split('^')
# vals = [convert(f) for f in fields[:field_count]]
# curs.execute(query, vals)
conn.commit()
conn.close()
...............................................................
เชื่อมกับ MySQL..
step1. ติดตั้ง MySQLdb Module ด้วยคำสั่ง
py -m pip install mysqlclient
**ก่อน python3 จะติดตั้งด้วยคำสั่ง pip install MySQL-python #เก่าไปแล้ว
step2. ทำตามตัวอย่างได้จากในเว็บนี้
https://www.tutorialspoint.com/python/python_database_access.htm
ความคิดเห็น
แสดงความคิดเห็น