<menu id="ycqsw"></menu><nav id="ycqsw"><code id="ycqsw"></code></nav>
<dd id="ycqsw"><menu id="ycqsw"></menu></dd>
  • <nav id="ycqsw"></nav>
    <menu id="ycqsw"><strong id="ycqsw"></strong></menu>
    <xmp id="ycqsw"><nav id="ycqsw"></nav>
  • python訪問數據庫語句(python連接數據庫的方法)


    數據分析離不開數據庫,如何使用python連接數據庫呢?聽我娓娓道來哈

    該筆記參考了PyMySQL官方文檔和《python數據采集》關于數據存儲的部分,歡迎大家去閱讀原著,相信會理解的更加透徹。

    如何使用Python連接MySQL數據庫?

    補充:文末增加Oracle數據庫的連接方式,大同小異。


    背景:

    我是在Anaconda notebook中進行連接實驗的,環境Python3.6,當然也可以在Python Shell里面進行操作。

    最常用也最穩定的用于連接MySQL數據庫的python庫是PyMySQL,所以本文討論的是利用PyMySQL連接MySQL數據庫,以及如何存儲數據。

    如何使用Python連接MySQL數據庫?

    下面開始:

    1、安裝PyMySQL庫

    最簡單的方式:在命令行輸入 pip install pymysql

    或者:下載whl文件進行安裝,安裝過程自行百度。

    2、安裝MySQL數據庫

    MySQL數據庫類型有兩種:MySQL和MariaDB,我用的是后者MariaDB。

    兩者在絕大部分性能上是兼容的,使用起來感覺不到啥區別。

    給出下載地址:MySQL,MariaDB,安裝過程很簡單,一路Next Step,不過要記好密碼。

    有個小插曲,MySQL和MariaDB相當于姐姐妹妹的關系,兩者由同一個人(Widenius)創建的。MySQL被Oracle收購后,Widenius先生覺得不爽,于是搞了個MariaDB,可以完全替代MySQL。大牛就是任性。

    3、SQL基本語法

    下面要用SQL的表創建、查詢、數據插入等功能,這里簡要介紹一下SQL語言的基本語句。

    查看數據庫:SHOW DATABASES;

    創建數據庫:CREATE DATEBASE 數據庫名稱;

    使用數據庫:USE 數據庫名稱;

    查看數據表:SHOW TABLES;

    創建數據表:CREATE TABLE 表名稱(列名1 (數據類型1),列名2 (數據類型2));

    插入數據:INSERT INTO 表名稱(列名1,列名2) VALUES(數據1,數據2);

    查看數據:SELECT * FROM 表名稱;

    更新數據:UPDATE 表名稱 SET 列名1=新數據1,列名2=新數據2 WHERE 某列=某數據;

    4、連接數據庫

    安裝好必要得文件和庫后,接下來正式開始連接數據庫吧,雖然神秘卻不難哦!

    #首先導入PyMySQL庫
    import pymysql
    #連接數據庫,創建連接對象connection
    #連接對象作用是:連接數據庫、發送數據庫信息、處理回滾操作(查詢中斷時,數據庫回到最初狀態)、創建新的光標對象
    connection = pymysql.connect(host = 'localhost' #host屬性
                                 user = 'root' #用戶名 
                                 password = '******'  #此處填登錄數據庫的密碼
                                 db = 'mysql' #數據庫名
                                 )

    執行這段代碼就連接好了!

    5.使用python代碼操作MySQL數據庫

    首先來查看一下有哪些數據庫:

    #創建光標對象,一個連接可以有很多光標,一個光標跟蹤一種數據狀態。
    #光標對象作用是:、創建、刪除、寫入、查詢等等
    cur = connection.cursor()
    #查看有哪些數據庫,通過cur.fetchall()獲取查詢所有結果
    print(cur.fetchall())

    打印出所有數據庫:

    ((‘information_schema’,),
    (‘law’,),
    (‘mysql’,),
    (‘performance_schema’,),
    (‘test’,))

    在test數據庫里創建表:

    #使用數據庫test
    cur.execute('USE test')
    #在test數據庫里創建表student,有name列和age列
    cur.execute('CREATE TABLE student(name VARCHAR(20),age TINYINT(3))')

    向數據表student中插入一條數據:

    sql = 'INSERT INTO student (name,age) VALUES (%s,%s)'
    cur.execute(sql,('XiaoMing',23))

    查看數據表student內容:

    cur.execute('SELECT * FROM student')
    print(cur.fetchone())

    打印輸出為:(‘XiaoMing’, 23)

    Bingo!是我們剛剛插入的一條數據

    最后,要記得關閉光標和連接:

    #關閉連接對象,否則會導致連接泄漏,消耗數據庫資源
    connection.close()
    #關閉光標
    cur.close()

    OK了,整個流程大致如此。當然這里都是很基礎的操作,更多的使用方法需要在PyMySQL官方文檔里去尋找。


    補充:

    Oracle數據庫連接

    如何使用Python連接MySQL數據庫?

    1、下載安裝外包cx_Oracle,方式:在命令行輸入 pip install cx_Oracle

    2、連接

    conn = oracle.connect('username/password@host:port/sid')#分別填用戶名/密碼/數據庫所在IP地址:port/sid

    3、獲取光標對象curser

    cur = conn.cursor()

    4、使用cursor進行各種操作

    cur.execute(sql語句)   

    5、關閉cursur、conn

    cursor.close()
    conn.close()

    版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

    發表評論

    登錄后才能評論
    国产精品区一区二区免费