標籤:date database mysq htm pytho utf-8 移動 lang class
#coding=utf-8
import
MySQLdb
conn
=
MySQLdb.connect(host
=
‘localhost‘
,user
=
‘root‘
,passwd
=
‘123456‘
,charset
=
‘utf8‘
)
cursor
=
conn.cursor()
try
:
#建立資料庫
DB_NAME
=
‘test‘
cursor.execute(
‘DROP DATABASE IF EXISTS %s‘
%
DB_NAME)
cursor.execute(
‘CREATE DATABASE IF NOT EXISTS %s‘
%
DB_NAME)
conn.select_db(DB_NAME)
#建立表
TABLE_NAME
=
‘t_user‘
cursor.execute(
‘CREATE TABLE %s(id int primary key,name varchar(30))‘
%
TABLE_NAME)
#插入單條資料
value
=
[
1
,
‘alexzhou1‘
]
cursor.execute(
‘INSERT INTO t_user values(%s,%s)‘
,value)
#批量插入資料
values
=
[]
for
i
in
range
(
2
,
10
):
values.append((i,
‘alexzhou%s‘
%
(
str
(i))))
cursor.executemany(
‘INSERT INTO t_user values(%s,%s)‘
,values)
#查詢記錄數量
count
=
cursor.execute(
‘SELECT * FROM %s‘
%
TABLE_NAME)
print
‘total records: %d‘
,count
#查詢一條記錄
print
‘fetch one record:‘
result
=
cursor.fetchone()
print
result
print
‘id: %s,name: %s‘
%
(result[
0
],result[
1
])
#查詢多條記錄
print
‘fetch five record:‘
results
=
cursor.fetchmany(
5
)
for
r
in
results:
print
r
#查詢所有記錄
#重設遊標位置,位移量:大於0向後移動;小於0向前移動,mode預設是relative
#relative:表示從當前所在的行開始移動,absolute:表示從第一行開始移動
cursor.scroll(
0
,mode
=
‘absolute‘
)
results
=
cursor.fetchall()
for
r
in
results:
print
r
cursor.scroll(
-
2
)
results
=
cursor.fetchall()
for
r
in
results:
print
r
#更新記錄
cursor.execute(
‘UPDATE %s SET name = "%s" WHERE id = %s‘
%
(TABLE_NAME,
‘zhoujianghai‘
,
1
))
#刪除記錄
cursor.execute(
‘DELETE FROM %s WHERE id = %s‘
%
(TABLE_NAME,
2
))
#必須提交,否則不會插入資料
conn.commit()
except
:
import
traceback
traceback.print_exc()
conn.rollback()
finally
:
cursor.close()
conn.close()
著作權屬於: Alex‘s Blog
原文地址: http://codingnow.cn/language/444.html
python2操作MySQL