[Python从零到壹] 八.数据库之MySQL和Sqlite基础知识及操作万字详解
歡迎大家來到“Python從零到壹”,在這里我將分享約200篇Python系列文章,帶大家一起去學習和玩耍,看看Python這個有趣的世界。所有文章都將結合案例、代碼和作者的經驗講解,真心想把自己近十年的編程經驗分享給大家,希望對您有所幫助,文章中不足之處也請海涵。Python系列整體框架包括基礎語法10篇、網絡爬蟲30篇、可視化分析10篇、機器學習20篇、大數據分析20篇、圖像識別30篇、人工智能40篇、Python安全20篇、其他技巧10篇。您的關注、點贊和轉發就是對秀璋最大的支持,知識無價人有情,希望我們都能在人生路上開心快樂、共同成長。
前一篇文章講述了Requests庫爬取豆瓣電影TOP250,并存儲至CSV文件。豆瓣TOP250是非常適合入門的案例,也能普及簡單的預處理知識。這篇文章將普及數據庫操作知識,這也為后續網絡爬蟲存儲至數據庫奠定基礎。本文詳細介紹MySQL安裝、SQL語句和Python操作數據庫知識,希望對您有所幫助。
文章目錄
- 一.MySQL數據庫
- 1.MySQL的安裝與配置
- 2.SQL語句詳解
- 二.Python操作MySQL數據庫
- 1.安裝MySQL擴展包
- 2.程序接口DB-API
- 3.Python調用MySQLdb擴展包
- 三.Python操作Sqlite3數據庫
- 四.本章小結
下載地址:
- https://github.com/eastmountyxz/Python-zero2one
前文賞析:
- [Python從零到壹] 一.為什么我們要學Python及基礎語法詳解
- [Python從零到壹] 二.語法基礎之條件語句、循環語句和函數
- [Python從零到壹] 三.語法基礎之文件操作、CSV文件讀寫及面向對象
- [Python從零到壹] 四.網絡爬蟲之入門基礎及正則表達式抓取博客案例
- [Python從零到壹] 五.網絡爬蟲之BeautifulSoup基礎語法萬字詳解
- [Python從零到壹] 六.網絡爬蟲之BeautifulSoup爬取豆瓣TOP250電影詳解
- [Python從零到壹] 七.網絡爬蟲之Requests爬取豆瓣電影TOP250及CSV存儲
- [Python從零到壹] 八.數據庫之MySQL基礎知識及操作萬字詳解
作者新開的“娜璋AI安全之家”將專注于Python和安全技術,主要分享Web滲透、系統安全、人工智能、大數據分析、圖像識別、惡意代碼檢測、CVE復現、威脅情報分析等文章。雖然作者是一名技術小白,但會保證每一篇文章都會很用心地撰寫,希望這些基礎性文章對你有所幫助,在Python和安全路上與大家一起進步。
數據庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫,在數據庫管理系統中,用戶可以對數據進行新增、刪除、更新、查詢等操作,從而轉變為用戶所需要的各種數據,并進行靈魂的管理。前面介紹的Python網絡數據爬取,得到的語料通常采用TXT文本、Excel或CSV格式進行存儲的,而本章節講述了如何將爬取的數據存儲至數據庫中,從而更方便數據分析和數據統計。本章將重點介紹MySQL數據庫相關知識及Python操作MySQL的方法。
一.MySQL數據庫
數據庫技術是信息管理系統、自動化辦公系統、銷售統計系統等各種信息系統的核心部分,是進行科學研究和決策管理的重要技術手段,常用的數據庫包括:Oracle、DB2、MySQL、SQL Server、Sybase、VF等。由于MySQL數據庫具有性能優良、穩定性好、配置簡單、支持各種操作系統等優勢,本章主要講述Windows系統下Python操作MySQL數據庫的內容。
1.MySQL的安裝與配置
首先,打開瀏覽器輸入MySQL官方網址“https://www.mysql.com/” ,點擊“DOWNLOADS”菜單,顯示如圖1所示的下載頁面。
接著找到MySQL軟件的下載頁面,網址如下,點擊“Download”按鈕下載相關軟件,如下圖所示的 mysql-installer-community-5.7.21.0.msi。同時,讀者也可以直接在百度搜索“MySQL”軟件下載安裝。
- https://dev.mysql.com/downloads/installer/
最新已更新至MySQL 8.0版本。
圖形化安裝過程如下,作者結合數據庫開發及實際安裝經驗進行敘述,讀者如果想系統地學習MySQL數據庫,推薦《深入淺出MySQL》這本書給大家。
(1) 雙擊MySQL安裝文件setup.exe,進入MySQL安裝歡迎界面,如圖3所示,點擊“Next”進行安裝。
(2) 緊接著進入“Setup Type”界面,選擇MySQL安裝類型,這里選擇“Typical”類型,如圖4所示。
其中Typical表示安裝常用的組件,默認安裝到C盤“Program Files\MySQL”文件夾下,推薦讀者選擇此安裝套件;Complete表示安裝所有的組件;Custom表示根據用戶自定義進行安裝組件,可以更改默認的安裝路徑,此類型更為靈活。
(3) 然后點擊“Next”按鈕進入下一個安裝步驟,選擇安裝目錄和“Developer Components”組件如圖5所示。
(4) 在安裝過程中,通常選擇默認選項,點擊“Next”按鈕進入下一步。同時,讀者也可以根據自己的電腦環境及喜好進行配置,圖6選擇手動準確配置(Detailed Configuration)。
(5) 繼續點擊“Next”按鈕進入下一步,在MySQL應用類型選擇界面中,提供了三種方式:
- Developer Machine(開發機),使用最小數量的內存。
- Server Machine(服務器),使用中等大小的內存。
- Dedicated MySQL Server Machine(專用服務器),當前可用的最大內存。
這里,作者選擇服務器類型(Server Machine),如圖7所示。
(6) 點擊“Next”下一步按鈕,進入數據庫用途選擇界面,這里作者選擇“Multifunctional Database”,它表示多功能數據庫,此選項對事務性和非事務性存儲引擎的存取速度都很快。
(7) 然后點擊“Next”按鈕,進入并發連接設置頁面,選擇“Decision Support(DSS)/ OLAP”,它表示決策支持系統,設置數據庫訪問量連接數為15(默認),如圖9所示。
(8) 設置MySQL端口號為3306(默認),再點擊下一步。其中MySQL調用的端口號為3306,如圖10所示。
(9) 設置編碼方式為utf-8(中文編碼),如圖11選擇字符集“Character Set”為utf8。
讀者需要注意,軟件開發過程中的編碼亂碼問題是一個常見的典型問題,尤其是處理中文字符,而其解決方法的核心思想是將所有開發環境的編碼方式設置為一致,通常將數據庫、Python、HTML源碼、前端瀏覽器等編碼方式都配置成UTF-8中文編碼方式。其中MySQL數據庫設置編碼方式為utf-8的過程如下圖所示,否則數據庫存儲或查詢中文漢字時,可能出現亂碼錯誤。
(10) 點擊“Next”按鈕,進入Windows選項設置界面,再單擊“Next”按鈕進入安全選項配置界面,超級用戶root的密碼通常設置為“123456”,如下圖12所示。
(11) 點擊“Next”按鈕,進入準備執行界面,等待MySQL安裝配置,當所有的選項都打上勾顯示成功的時候表示MySQL安裝成功,如圖13所示,最后點擊“Finish”完成全部安裝。
(12) 至此,MySQL數據庫安裝完成,Windows的“所有程序”菜單中已經多了“MySQL 5.0”等選項。
2.SQL語句詳解
數據庫中最重要的就是SQL語句,它是結構化查詢語言,英文Structure Query Language的縮寫,SQL是使用關系模型的數據庫應用語言。在MySQL安裝成功后,我們將詳細介紹SQL語句,并通過MySQL軟件介紹SQL語句的基礎用法及對應代碼。
SQL語句主要劃分為三種類別。
- DDL(Data Definition Language)語句
數據定義語言。該語句定義了不同的數據字段、數據庫、數據表、列、索引等數據庫對象。常用語句關鍵字包括create、drop、alter等。 - DML(Data Manipulation Language)語句
數據庫操縱語句。該語句用于插入、刪除、更新和查詢數據庫的記錄,是數據庫操作最常用的語句,并檢查數據完整性。常用的語句關鍵字包括insert、delete、update和select。 - DCL(Data Control Language)語句
數據控制語句。該語句用于控制不同數據字段的許可和訪問級別,定義了數據庫、表、字段、用戶的訪問權限和安全級別。常用的語句關鍵字包括grant、revoke等。
下面結合我們安裝的MySQL軟件具體的講解SQL語句的用法。
首先,運行MySQL并輸入默認的用戶密碼“123456”,如圖14所示。
(1) 顯示數據庫
輸入“show databases”語句,查看當前MySQL數據庫中存在的所有數據庫,如果某個數據庫已經存在,則可以使用use語句直接使用;如果數據庫不存在,則第一次需要使用create語句創建數據庫。
(2) 使用數據庫
如果想直接使用已經存在的數據庫test01,則直接使用如下語句。
(3) 創建數據庫
創建數據庫語句是:
- create database 數據庫名字
如果想創建新的數據庫,使用create關鍵字創建。創建成功后,再調用use關鍵詞選擇該數據庫進行使用,代碼如下:
mysql> create database bookmanage; Query OK, 1 row affected (0.00 sec)mysql> use bookmanage; Database changed圖15顯示創建數據庫“bookmanage”圖書管理系統及選擇數據庫。
這里同樣可以使用“show tables”語句顯示該數據庫中所有存在的表,但是目前還沒有一張表,故返回“Empty set”。
(4) 創建表
創建表使用:
- create table 表名 (字段名 字段類型 約束條件…)
例如創建books圖書表,包括圖書編號bookid、圖書名稱bookname、價格price、圖書日期bookdate等字段。代碼如下所示:
create table books(bookid int primary key, bookname varchar(20),price float,bookdate date);其中創建的表名稱為books,圖書編號為int類型,同時為主鍵(primary key),用于唯一標識表的字段;圖書名稱位varchar類型,長度為20;價格為浮點型float;圖書日期為date類型。詳細介紹推薦大家課后去學習,這里只是入門講解。
(5) 查看表信息
如果想查看當前數據庫存在多少張表,則使用show關鍵字。
當前僅存在一張表books。如果想查看某張表的定義,則使用desc關鍵字。
desc books;運行結果如下圖17所示,顯示了圖書表的詳細信息。
desc命令可以查看表的定義,但是如果想查看表更全面的信息,則通過更深入的SQL語句,比如通過查看創建表的SQL語句。
(6) 刪除表
如果想要刪除表books,使用“drop”關鍵詞。
(7) 插入語句
當數據庫和表創建成果后,需要向表中插入數據,使用的insert關鍵字。
比如向books圖書表中插入信息,代碼如下:
insert into books(bookid, bookname, price, bookdate)values('1', '平凡的世界', '29.8', '2017-06-10');使用select查詢語句顯示結果如圖19所示,后面詳細介紹select語句。
在執行insert插入過程中,如果省略所有字段,只需要values值一一對應即可。
mysql> insert into books-> values('2', '活著', '25.0', '2017-06-11');如圖20所示,插入第二本書《活著》,select顯示的結果為兩本書的詳細信息。
同理,如果只想插入某幾個字段的數據,只需要對應一致即可,比如查詢書序號和書名《鋼鐵是怎樣煉成的》。
mysql> insert into books(bookid, bookname)-> values('3', '鋼鐵是怎樣煉成的');運行結果如圖21所示,《鋼鐵是怎樣煉成的》書籍中,省略的字段價格(price)和日期(bookdate)字段顯示為NULL空值。
(8) 查詢語句
查詢語句基本語法是:
- select 字段 from 表名 [where 條件]
該語句用于查詢指定字段的數據,當字段為星號時,它用于查詢表中的所有字段;where緊跟著查詢條件,該參數可以省略。最簡單的查詢語句如下所示,將顯示books表中的所有字段和數據,包括三本書籍的詳細信息。
mysql> select * from books; +--------+---------------------------------------------+--------+-------------------+ | bookid | bookname | price | bookdate | +--------+---------------------------------------------+--------+-------------------+ | 1 | 平凡的世界 | 29.8 | 2017-06-10 | | 2 | 活著 | 25 | 2017-06-11 | | 3 | 鋼鐵是怎樣煉成的 | NULL | NULL | +--------+--------------------------------------------+---------+--------------------+ 3 rows in set (0.00 sec)如果想顯示需要的字段,則可以用逗號分隔,如下所示:
select bookid,bookname,price from books;顯示結果如圖22所示,其中bookdate字段沒有顯示出來。
如果需要增加查詢條件,則使用where語句即可,比如查詢編號大于1的書籍、查詢價格非空的書籍,代碼如下:
select bookid,bookname,price,bookdate from books where bookid>1; select bookid,bookname,price,bookdate from books where price is not null;顯示結果如圖23所示,第一條語句顯示編號為2和3的結果,第二條語句顯示圖書價格不為空的結果。
更多的查詢語句希望讀者自己去研究,包括排序、group by分組、子查詢等,同時后面數據分析部分,會結合實際應用介紹數據庫查詢語句及可視化分析處理。
(9) 更新語句
更新語句使用update關鍵字,基本格式是:
- update 表名 set 字段=新值 [where 條件]
例如將《活著》書名更新為《朝花夕拾》,代碼如下:
update books set bookname=’朝花夕拾’ where bookname=’活著’;運行結果如圖24所示,其中圖書序號為2的信息進行了更新。
(10) 刪除語句
刪除語句使用delete關鍵字,其基本格式是:
- delete from 表名 where 條件;
例如將價格為空的數據刪除,使用的條件是“where price is null”,代碼如下:
delete from books where price is null;運行結果如圖25所示,可以看到第三本書《鋼鐵是怎樣煉成的》已經被刪除。
此時,MySQL數據庫的基礎知識就介紹完了,更多知識推薦讀者下來自行補充學習,比如結合 Navicat for MySQL 工具可視化結合。下面將介紹Python調用MySQL及操作。
二.Python操作MySQL數據庫
Python訪問數據庫需要對應的接口程序,我們可以把接口程序理解為Python的一個模塊,它提供了數據庫客戶端的接口供您訪問。本小節主要介紹了Python操作MySQL數據庫,通過調用MySQLdb擴展包操作數據庫。
1.安裝MySQL擴展包
首先需要在Python環境下安裝MySQL擴展包,有兩種方法。
第一種方法:通過“pip install mysql”安裝Python的MySQL庫。
但是使用該方法可能會遇到一些錯誤,如“Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat)”或“_mysql.c(42) : fatal error C1083: Cannot open include file: ‘config-win.h’: No such file or directory”等,這些錯誤可能來自于驅動等問題??梢园惭b一個Micorsoft Visual C++ Compiler for Python 2.7包解決。請讀者百度自行解決,通常為路徑錯誤或版本需要升級。
第二種方法:從Python官網下載安裝文件(推薦該方法)。
假設已經下載了一個whl文件,然后安裝該文件。
- https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient
- https://pypi.python.org/pypi/MySQL-python/
安裝過程如下圖所示。
同樣,可以下載MySQL-python-1.2.3.win-amd64-py2.7.exe文件安裝,如下圖所示。
2.程序接口DB-API
接著給大家介紹Python操作MySQL數據庫的API接口。Python接口程序一定要遵守Python DB-API規范。DB-API定義了一系列必須的操作對象和數據庫存取方式,以便為各種各樣的底層數據庫系統和不同的數據庫接口程序提供一致的訪問接口。由于DB-API為不同的數據庫提供了一致的訪問接口,這讓它在不同的數據庫之間移植代碼成為一件輕松的事情。
下面簡單介紹DB-API的使用方法。
- 模塊屬性
一個DB-API模塊的定義如表1所示。
- 連接數據庫函數
連接數據庫的函數是connect()函數,其生成一個connect對象,用于訪問數據庫。Connect()函數的參數如表2所列。
下面是Python導入MySQLdb擴展包,調用connect()函數連接數據庫的代碼。
import MySQLdb conn = MySQLdb.connect(host='localhost', db='bookmanage', user='root',passwd='123456', port=3306, charset='utf8')MySQLdb擴展包的connect對象常用方法如表3所示。
commit()、rollback()、cursor()方法對于支持事務(Transaction)的數據庫更有意義,事務是指作為單個邏輯工作單元執行的一系列操作,要么完整地執行,要么完全地不執行,從而保證數據的完整性和安全性。
- 游標對象
上面說了connect()方法用于提供連接數據庫的接口,如果要對數據庫操作那么還需要使用游標對象,游標對象的屬性和方法如表4所示。
下面通過簡單的示例進行講解。
3.Python調用MySQLdb擴展包
前面我們創建了數據庫“bookmanage”和表“books”,它們用來記錄書籍管理系統中的書籍信息,接下來講解怎樣通過Python來顯示。
(1) 查詢數據庫名稱
首先,我們查看本地數據庫中所包含的數據庫名稱,使用“show databases”語句。代碼如下:
調用 MySQLdb.connect() 訪問用戶root本地MySQL數據庫,其默認密碼為“123456”。然后調用cur.execute(‘show databases’)執行顯示所有數據庫的語句,返回結果通過循環獲取,如圖29所示。
如果本地數據庫已經存在,并且讀者忘記其數據庫的名稱,可以通過該方法查詢數據庫中所包含所有數據庫,再連接該數據庫進行相關的操作。
(2) 查詢表
這里我們需要查詢“bookmanage”數據庫中的書籍表(books)內容,代碼如下:
代碼通過connect()函數連接數據庫,通過cursor()函數定義游標,然后調用游標的 excute(‘select * from books’) 執行數據庫操作,此處為查詢操作,再通過fetchall()函數獲取所有數據。其中查詢語句為“select * from books”,查找books表中所有數據,輸出結果如下:
>>> 表中包含 2 條數據1 平凡的世界 29.8 2017-06-10 2 朝花夕拾 25 2017-06-11 >>>對應的MySQL中的結果是一致的,圖30是對應的結果。
(3) 新建表
下面創建一張學生表,主要是調用commit()函數提交數據,執行create table語句操作。
輸出結果如下所示,包括書籍表和學生表,其中學生表包括序號、姓名和性別。
>>> 插入后包含表: books student >>>(4) 插入數據
插入數據也是定義好SQL語句,調用execute(sql)方法實現。核心代碼是:
通常插入的新數據需要通過變量進行賦值,其值不是固定的,參考文件。
# coding:utf-8 # By:Eastmount CSDN import MySQLdbtry:conn=MySQLdb.connect(host='localhost',user='root',passwd='123456',port=3306, db='bookmanage', charset='utf8')cur=conn.cursor()#插入數據sql = '''insert into student values(%s, %s, %s)'''cur.execute(sql, ('3', 'xiaoyang', '男'))#查看數據print('\n插入數據:')cur.execute('select * from student')for data in cur.fetchall():print('%s %s %s' % data)cur.close()conn.commit()conn.close() except MySQLdb.Error as e:print("Mysql Error %d: %s" % (e.args[0], e.args[1]))輸出結果如下:
>>> 插入數據: 3 xiaoyang 男 >>>這里作者只講述了這幾種常見的數據庫操作,其他SQL語句類似,請讀者下來自行閱讀實踐。接下來講解Python操作輕量型數據集Sqlite3。
三.Python操作Sqlite3數據庫
SQLite是一款輕型數據庫,是一種遵守事務ACID性質的關系型數據庫管理系統,它占用的資源非常低,能夠支持Windows/Linux/Unix等主流操作系統,同時能夠跟很多程序語言如C#、PHP、Java、Python等相結合使用。
SQLite可以使用Sqlite3模塊與Python進行集成,Sqlite3模塊是由Gerhard Haring編寫的,提供了一個與DB-API 2.0規范兼容的SQL接口。讀者可以直接使用Sqlite3模塊,因為Python 2.5.x 以上版本默認自帶了該模塊。
Sqlite3使用方法和前面介紹的MySQLdb庫類似,首先必須創建一個數據庫的連接對象,然后有選擇地創建光標對象,再定義SQL語句進行執行,最后需要關閉對象和連接。Sqlite3常用方法如下所示:
- sqlite3.connect()
打開一個到SQLite數據庫文件database的連接。 - connection.cursor()
創建一個cursor,將在Python數據庫編程中用到。 - cursor.execute(sql)
執行一個sql語句,注意sql 語句可以被參數化使用。 - cursor.executescript(sql)
該例程一旦接收到腳本,會執行多個sql語句。sql語句應該用分號分隔。 - connection.commit()
提交當前的事務。 - connection.rollback()
回滾至上一次調用commit()對數據庫所做的更改。 - connection.close()
關閉數據庫連接。 - cursor.fetchone()
獲取查詢結果集中的下一行,返回一個單一的序列,當沒有更多可用的數據時,則返回 None。 - cursor.fetchmany()
獲取查詢結果集中的下一行組數據,返回一個列表。 - cursor.fetchall()
獲取查詢結果集中所有的數據行,返回一個列表。
下面這段代碼是Python操作Sqlite3的基礎用法,其語法基本和前面講述的MySQLdb庫類似。
#-*- coding:utf-8 -*- # By:Eastmount CSDN import sqlite3#連接數據庫:如果數據庫不存在則創建 conn = sqlite3.connect('test6.db') cur = conn.cursor() print('數據庫創建成功.\n')#創建表 PEOPLE(編號,姓名,年齡,公司,薪水) cur.execute('''CREATE TABLE PEOPLE(ID INT PRIMARY KEY NOT NULL,NAME TEXT NOT NULL,AGE INT NOT NULL,COMPANY CHAR(50),SALARY REAL);''') print("PEOPLE表創建成功.\n") conn.commit()#插入數據 cur.execute("INSERT INTO PEOPLE (ID,NAME,AGE,COMPANY,SALARY) \VALUES (1, '小楊', 26, '華為', 10000.00 )"); cur.execute("INSERT INTO PEOPLE (ID,NAME,AGE,COMPANY,SALARY) \VALUES (2, '小顏', 26, '百度', 8800.00 )"); cur.execute("INSERT INTO PEOPLE (ID,NAME,AGE,COMPANY,SALARY) \VALUES (3, '小紅', 28, '騰訊', 9800.00 )"); conn.commit() print("數據插入成功.\n")#查詢操作 cursor = cur.execute("SELECT id, name, age, company, salary from PEOPLE") print("數據查詢成功.") print("序號", "姓名", "年齡", "公司", "薪水") for row in cursor:print(row[0], row[1], row[2], row[3], row[4]) print('')#更新操作 cur.execute("UPDATE PEOPLE set COMPANY = '華為' where ID=2") conn.commit() print("數據更新成功.") cursor = cur.execute("SELECT id, name, company from PEOPLE") for row in cursor:print(row[0], row[1], row[2]) print('')#刪除操作 cur.execute("DELETE from PEOPLE where COMPANY='華為';") conn.commit() print("數據刪除成功.") cursor = cur.execute("SELECT id, name, company from PEOPLE") for row in cursor:print(row[0], row[1], row[2]) print('')#關閉連接 conn.close()輸出結果如圖31所示:
其步驟如下:
- 1.首先在本地創建了一個test6.db的數據庫文件。
- 2.執行游標中的execute()函數,創建了PEOPLE表,包括編號、姓名、年齡、公司、薪水等字段,字段涉及各種數據類型。
- 3.執行插入數據庫操作,注意需要調用conn.commit()函數提交執行。
- 4.執行查詢操作,SQL語句為“SELECT id, name, age, company, salary from PEOPLE”,然后通過for循環獲取查詢的結果,顯示“小楊”、“小顏”、“小紅”的信息。
- 5.執行更新操作并查詢數據結果,將編號為“2”的公司信息更改為“華為”。
- 6.執行刪除操作,刪除公司名稱為“華為”的數據,最后剩下“小紅”的信息。
更多數據庫實際操作將在后面的數據分析章節和爬蟲部分進行詳細介紹,同時推薦讀者深入研究Python操作數據庫的知識,包括事務、存儲過程、觸發器等內容。
四.本章小結
數據庫是按照數據結構來組織、存儲和管理數據的倉庫,用戶可以通過數據庫來存儲和管理所需的數據,包括簡單的數據表格、海量數據等。數據庫被廣泛應用于各行各業,比如信息管理系統、辦公自動化系統、各種云信息平臺等。
本章為什么要介紹Python操作數據庫知識呢?
- 一方面,數據爬取、數據存儲、數據分析、數據可視化是密不可分的四個部分,當我們爬取了相關數據之后,需要將其存儲至數據庫中,這能夠更加標準化、智能化、自動化、便捷地管理數據,也為后續的數據分析提供強大的技術支撐,能夠自定義提取所需數據塊進行分析;
- 另一方面,數據庫為數據共享,實現數據集中控制,保證數據的一致性和可維性提供保障。所以學習Python操作數據庫是非常必要的,也希望讀者認真學習本章內容,掌握Python操作MySQL數據庫、Sqlite3輕量型數據庫知識,并應用到自己的科研項目中去。
該系列所有代碼下載地址:
- https://github.com/eastmountyxz/Python-zero2one
2020年在github的綠瓷磚終于貼完了第一年提交2100余次,獲得1500多+stars,開源93個倉庫,300個粉絲。挺開心的,希望自己能堅持在github打卡五年,督促自己不斷前行。當然也存在很多不足之處,希望來年分享更高質量的資源,也希望能將安全和AI頂會論文系列總結進來,真誠的希望它們能幫助到大家,感恩有你,一起加油~
最后,真誠地感謝您關注“娜璋之家”公眾號,感謝CSDN這么多年的陪伴,會一直堅持分享,希望我的文章能陪伴你成長,也希望在技術路上不斷前行。文章如果對你有幫助、有感悟,就是對我最好的回報,且看且珍惜!2020年8月18日建立的公眾號,再次感謝您的關注,也請幫忙宣傳下“娜璋之家”,哈哈~初來乍到,還請多多指教。
(By:娜璋之家 Eastmount 2021-03-03 夜于貴陽 https://blog.csdn.net/Eastmount )
參考文獻如下:
- [1] 作者書籍《Python網絡數據爬取及分析從入門到精通》
- [2] MySQL官網. MySQL[EB/OL]. (2017)[2017-09-23]. https://www.mysql.com/.
- [3] 楊秀璋. [python] 專題九.Mysql數據庫編程基礎知識 - CSDN博客[EB/OL]. (2016-08-10)[2017-09-23]. http://blog.csdn.net/eastmount/article/details/52156383.
- [4] 楊秀璋. 專欄:數據庫實戰開發設計與優化 - CSDN博客[EB/OL]. (2016)[2017-09-23]. http://blog.csdn.net/column/details/14842.html.
- [5] runoob.com官網. SQLite - Python[EB/OL]. (2017)[2017-09-23]. http://www.runoob.com/sqlite/sqlite-python.html.
- [6] 楊秀璋. [python爬蟲] Selenium爬取內容并存儲至MySQL數據庫 - CSDN博客[EB/OL]. (2017-03-13)[2017-09-23]. http://blog.csdn.net/eastmount/article/details/61914613.
總結
以上是生活随笔為你收集整理的[Python从零到壹] 八.数据库之MySQL和Sqlite基础知识及操作万字详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [网络安全提高篇] 一〇二.Metasp
- 下一篇: [网络安全提高篇] 一〇五.SQL注入之