oracle数据如何获取游标中动态字段_原来Python自带了数据库,用起来真方便!
記錄? ?分享? ?成長
Python作為數據科學主流語言,被廣泛用于數據讀存、處理、分析、建模,可以說是無所不能。
數據一般存放在本地文件或者數據庫里,之前介紹過如何使用python讀取本地文件,也對# PyMySQL、cx_Oracle等數據庫連接庫做過簡單的使用分享。
這次推薦一個python自帶的輕量級數據庫模塊-sqlite3,先要弄清楚什么是SQLite:
?SQLite是一種用C寫的小巧的嵌入式數據庫,它的數據庫就是一個文件。SQLite 不需要一個單獨的服務器進程或操作的系統,不需要配置,這意味著不需要安裝或管理,所有的維護都來自于SQLite 軟件本身。
?sqlite3模塊不同于PyMySQL模塊,PyMySQL是一個python與mysql的溝通管道,需要你在本地安裝配置好mysql才能使用,而SQLite是python自帶的數據庫,不需要任何配置,使用sqlite3模塊就可以驅動它。
本文我們將進行連接 SQLite數據庫、創建表、插入數據、讀取數據、修改數據等操作。
1. 導入sqlite3模塊
sqlite3是內置模塊,所以不需要安裝的,直接import導入即可:
import?sqlite32. 創建與SQLite數據庫的連接
使用sqlite3.connect()函數連接數據庫,返回一個Connection對象,我們就是通過這個對象與數據庫進行交互。數據庫文件的格式是filename.db,如果該數據庫文件不存在,那么它會被自動創建。該數據庫文件是放在電腦硬盤里的,你可以自定義路徑,后續操作產生的所有數據都會保存在該文件中。
#?創建與數據庫的連接conn?=?sqlite3.connect('test.db')
還可以在內存中創建數據庫,只要輸入特殊參數值:memory:即可,該數據庫只存在于內存中,不會生成本地數據庫文件。
conn?=?sqlite3.connect(':memory:')建立與數據庫的連接后,需要創建一個游標cursor對象,該對象的.execute()方法可以執行sql命令,讓我們能夠進行數據操作。
#創建一個游標?cursorcur?=?conn.cursor()
3. 在SQLite數據庫中創建表
這里就要執行sql的建表語句了,我們先創建一張如下的學生成績表-scores:該表目前只有字段名和數據類型,沒有數據,執行以下語句實現:
#?建表的sql語句sql_text_1?=?'''CREATE?TABLE?scores
???????????(姓名?TEXT,
????????????班級?TEXT,
????????????性別?TEXT,
????????????語文?NUMBER,
????????????數學?NUMBER,
????????????英語?NUMBER);'''
#?執行sql語句
cur.execute(sql_text_1)
4. 向表中插入數據
建完表-scores之后,只有表的骨架,這時候需要向表中插入數據:
執行以下語句插入單條數據:
#?插入單條數據sql_text_2?=?"INSERT?INTO?scores?VALUES('A',?'一班',?'男',?96,?94,?98)"
cur.execute(sql_text_2)
執行以下語句插入多條數據:
data?=?[('B',?'一班',?'女',?78,?87,?85),????????('C',?'一班',?'男',?98,?84,?90),
????????]
cur.executemany('INSERT?INTO?scores?VALUES?(?,?,?,?,?,?)',?data)
#?連接完數據庫并不會自動提交,所以需要手動?commit?你的改動conn.commit()
5. 查詢數據
我們已經建好表,并且插入了三條數據,現在來查詢特定條件下的數據:
#?查詢數學成績大于90分的學生sql_text_3?=?"SELECT?*?FROM?scores?WHERE?數學>90"
cur.execute(sql_text_3)
#?獲取查詢結果
cur.fetchall()
返回:
備注:獲取查詢結果一般可用.fetchone()方法(獲取第一條),或者用.fetchall()方法(獲取所有條)。
6. 其他操作
對數據庫做改動后(比如建表、插數等),都需要手動提交改動,否則無法將數據保存到數據庫。
#?提交改動的方法conn.commit()
使用完數據庫之后,需要關閉游標和連接:
#?關閉游標cur.close()
#?關閉連接
conn.close()
附連接connection和游標cursor的API方法:
-?END -
本文為轉載分享&推薦閱讀,若侵權請聯系后臺刪除
推薦閱讀▼
數分簡歷里,【實習經歷】怎么修改呀?
數據分析面試,到底怎么準備機器學習知識?
學會渠道投放效果評估,頭再也不比雷佳音的大!
點贊、分享、在看,一鍵三連 ↓↓↓
總結
以上是生活随笔為你收集整理的oracle数据如何获取游标中动态字段_原来Python自带了数据库,用起来真方便!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JQuery警报灯
- 下一篇: xampp命令行连接MySql数据库