python基础课程3(看代码看注释)--数据库基本操作(mysql)
生活随笔
收集整理的這篇文章主要介紹了
python基础课程3(看代码看注释)--数据库基本操作(mysql)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#人生苦短,我用python
#推薦一個python數據結構可視化工具,網址:http://www.pythontutor.com
##課表:1.mysql數據庫的基本操作;2.用python操作基本數據庫;3.編寫python爬蟲并保存到數據庫###數據庫:存儲數據的地方,平時指的數據庫指的是數據管理系統,大型的數據管理軟件,用來管理操作數據,excel叫表格數據操作軟件
#安裝mysql數據庫,移步百度
###mysql數據庫基本操作
#連接數據庫
mysql -u root -p #u 是用戶名,p:需要密碼登錄數據庫
#查看數據庫
show database;
#選擇數據庫
use database_name;#如use Examination(表示查看Examination數據庫)
#查看數據庫中table表
show table;
#查看表格的結構
desc table;#(如 desc score:查看score數據表結構)
#查看表中的數據
select * fromtable_name#select * from score ;
#查看表中的數據并限制數量
select * from table_name#select * from score limit 10;##推薦一款軟件,數據庫管理工具,只在mac上有,叫做sequelpro,網址http://www.sequelpro.com,windows使用heidisql##關系型數據庫
dict = {'a':100,'b':200
}
##關系型數據庫,另一種數據庫是非關系型數據庫,比較流行的是mongodb,redis###mysql excel的不同:mysql是一種關系型數據庫
import json
data_1 = "{'a':1,'b':2,'c':3}"
data_2 = '{"a":1,"b":2,"c":3}'
j_data = json.loads(data_2)
type(j_data)
with open('path','r') as fj_data = json.loads(f)
###用命令行操作數據庫
##創建數據庫
create database Examination_copy default charset utf8mb4;
##刪除數據庫
drop database Examination_copy;
##指定字符集和校對集,創建數據庫
create database Examination_copy default charset utf8mb4 collate utf8MB4_general_ci;
##創建表格
create table class{'id' int(11)unsigned not null default#id字段整型11位無符號非空PRIMARY KEY('id')
}
#插入操作
insert into 'table_name'('id','name')
value(3,'高一3班')#修改數據
update 'class' set 'name' = '高一五班'
where 'id' ='6'###上述命令行操作數據庫著實麻煩,我們接下來要學會使用python操作數據庫
## Nevicat 強大的mysql數據管理軟件
##python安裝第三方庫(windows環境):方法1.pip install 模塊名稱;方法2.conda install模塊名稱
import MySQLdb #沒有安裝的話需要安裝###記住本機木有安裝成功,記得有時間返回來安裝呀>。<
#連接數據庫DATABASE = {'host':'localhost', #如果是遠程數據庫則為遠程服務器的ip地址'database':'Ex','user':'root','password':'yuping','charset':utf8
}
db = MySQLdb.comnect(host='localhost',database='Ex',user='root',password='yuping')
#等價于
db = MySQLdb.comnect('localhost','Ex','root','yuping')
#等價于
db = MySQLdb.comnect(**DATABASE)
##數據庫中的游標概念
##查詢語句
cursor = db.cursor()
sql = "select * from student where id<20"
cursor.excute(sql)#使用游標執行sql語句,執行結束后就可以用游標獲取所有的結果
result = cursor.fetchall()
for row in result:print(row)
##連接數據庫沒有按照字符集指定我們數據庫的編碼格式時會打印出??號,在數據庫中設置'charset':'utf8#插入操作
sql = "insert into 'class'('name') values('高一四班');"
cursor = db.cursor()
cursor.execute(sql)
db.commit()
#刪除操作
sql = "delete from 'class'('name') values('高一四班');"
cursor = db.cursor()
cursor.execute(sql)
db.commit()
#省略
#更新操作
sql = "update 'class' set 'name'= '高一四班';"
cursor = db.cursor()
cursor.execute(sql)
db.commit()##捕捉異常
try:a = 10b = a+'hello'##捕捉了之后即使數據類型不一致不能相加也不會報錯因為已經用except捕捉異常了最后打出了e
except Exception as e:##回本操作print(e)
try:
sql = "insert into 'class'('name') values('高一四班');"
cursor = db.cursor()
cursor.execute(sql)
db.commit()
except Exception as e1:pass
##回滾操作db.rockback()
總結
以上是生活随笔為你收集整理的python基础课程3(看代码看注释)--数据库基本操作(mysql)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【OpenCV 例程200篇】41. 图
- 下一篇: 神经网络反向传导算法