1. 程式人生 > >python之操作數據庫

python之操作數據庫

creat password 字典 ash 文件夾 des 第三方模塊 http desc

一、操作mysql

首先,python3操作mysql.需要安裝第三方模塊pymysql,在python2中則使用的是pysqldb。這裏使用pymysql.

直接使用pip install pymysql或python3 setup.py install安裝。

1.1連接mysql

import pymysql
#數據庫連接信息
host=127.0.0.1
user=db
password=123456 #密碼只能是字符串
db=db
port=3306#端口號只能寫int類型
charset=utf8#只能寫utf8,不能寫utf-8
conn = pymysql.connect(host=host,password=psassword,
                user
=user,db=db,port=port, charset=charset,autocommit=True )#建立連接 #autocommit=True往數據庫寫數據時,需要commit下,這個參數表示自動提交。 cur=conn.cursor#創建遊標 sql=select * from app_users limit 5; cur.execute(sql)#只是執行sql語句,並不返回執行sql的結果 print(cur.fetchall())#執行上述mysql語句,把結果放到cur,通過fetchall將執行sql後的結果取出來,默認返回的是二維元組
print(cur.description())#獲取這個表裏所有字段的屬性信息 cur.close()#關閉遊標 conn.close()#關閉連接
#創建遊標,操作設置為字典類型,返回結果為字典格式!不寫默認是元組格式!
cur=conn.cursor(cursor=pymysql.cursors.DictCursor)
#接收數據有三種方式:
res = cursor.fetchone()  #接收返回的第一行數據
ret = cursor.fetchmany(n) #接收返回的n行數據
req = cursor.fetchall() #接收返回的說有數據
#獲取最新的自增ID
new_id=cursor.lastrowid
print(new_id) conn.rollback()#回滾當前遊標的所有操作

1.2創建數據庫表

import pymysql
host=127.0.0.1
user=jxz
password=123456 #密碼只能是字符串
db=jxz
port=3306#端口號只能寫int類型
charset=utf8#只能寫utf8,不能寫utf-8
conn = pymysql.connect(host=host,password=password,
                user=user,db=db,port=port,
                charset=charset,autocommit=True
                )#建立連接
#autocommit=True往數據庫寫數據時,需要commit下,這個表示自動提交。
cur= conn.cursor() #建立遊標
sql=create table LYH (username char(20),age int,sex char(20))
cur.execute(sql)
print(cur.fetchall())
cur.close()
conn.close()

1.3插入數據

import pymysql
host=127.0.0.1
user=jxz
password=123456 #密碼只能是字符串
db=jxz
port=3306#端口號只能寫int類型
charset=utf8#只能寫utf8,不能寫utf-8
conn = pymysql.connect(host=host,password=password,
                user=user,db=db,port=port,
                charset=charset,autocommit=True
                )#建立連接
#autocommit=True往數據庫寫數據時,需要commit下,這個表示自動提交。

cur= conn.cursor() #建立遊標
sql=insert into LYH (username,age,sex) VALUES ("liuyihan",18,"女")
cur.execute(sql)
cur.close()
conn.close()

二、操作redis

redis是一種nosql數據庫,是一種高性能的key-value數據庫。其特點有以下三個:

  • 數據可持久化地保存在磁盤中,重啟時可再次加載使用
  • value可存儲string,list,set,hash等數據結構
  • 支持master-slave數據備份

通過redis desktop manager連接工具,也操作redis數據庫。具體方法如圖:

技術分享圖片

通過python操作redis,首先安裝redis模塊。

import redis
import random
ip=127.0.0.1
password=******
r=redis.Redis(host=ip,password=password,port=6379,db=1)
#操作string類型的值
# res=r.get(‘liuyihan‘)
# print(res)
# s=‘ss‘
# print(s.encode())#將字符串變成bytes類型,二進制類型
# print(res.decode())#將二進制類型轉變成字符串類型
# r.flushdb()#清空所有表
# r.set(‘lyh‘,‘ftt‘,50)#50指定key50S後失效
# r.delete(‘gta‘)#刪除指定的key
# r.setex(‘lyh‘,‘233‘,40)#40是指定value40S後失效
# token:lyh#冒號前的表示文件夾
r.set(message:lyh,excel,word)#冒號:前的是文件夾,冒號:後的是key,‘excel,word‘是values
# print(r.keys())#獲取數據庫中的所有key,返回一個列表
#hash類型,二層字典
# token={‘lyh‘:{‘age‘:‘18‘,‘firm‘:‘DJ‘}}
r.hset(Message,LYH,"Shenzen")
print(r.hget(jnz_stus,cm))
# res=r.hgetall(‘jnz_stus‘)
# print(res)
# new={}
# for key,value in  enumrate(res):
#     new[key.decode()]=value.decode()
# print(new)

python之操作數據庫