欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python SQLite3簡介

 更新時(shí)間:2018年02月22日 11:40:51   作者:MTbaby  
這篇文章主要為大家詳細(xì)介紹了Python SQLite3的簡單介紹以及使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最近需要用Python寫一個(gè)簡易通訊錄,但是對于數(shù)據(jù)存儲(chǔ)很發(fā)愁。大家都知道,使用 Python 中的列表和字典進(jìn)行存儲(chǔ)數(shù)據(jù)是很不靠譜的,所以就想到Python有沒有內(nèi)置的數(shù)據(jù)庫模塊。

SQLite3簡介

SQLite3 可使用 sqlite3 模塊與 Python 進(jìn)行集成。sqlite3 模塊是由 Gerhard Haring 編寫的。它提供了一個(gè)與 PEP 249 描述的 DB-API 2.0 規(guī)范兼容的 SQL 接口。您不需要單獨(dú)安裝該模塊,因?yàn)?Python 2.5.x 以上版本默認(rèn)自帶了該模塊。
為了使用 sqlite3 模塊,您首先必須創(chuàng)建一個(gè)表示數(shù)據(jù)庫的連接對象,然后您可以有選擇地創(chuàng)建光標(biāo)對象,這將幫助您執(zhí)行所有的 SQL 語句。

怎么樣,聽起來不錯(cuò)吧!那就快來學(xué)習(xí)使用吧。

連接數(shù)據(jù)庫

下面的 Python 代碼顯示了如何連接到一個(gè)現(xiàn)有的數(shù)據(jù)庫。如果數(shù)據(jù)庫不存在,那么它就會(huì)被創(chuàng)建,最后將返回一個(gè)數(shù)據(jù)庫對象。

#-*- coding:utf-8 -*-
import sqlite3
conn = sqlite3.connect('mysql_person.db')

print "Opened database successfully";

在這里,您也可以把數(shù)據(jù)庫名稱復(fù)制為特定的名稱 :memory:,這樣就會(huì)在 RAM 中創(chuàng)建一個(gè)數(shù)據(jù)庫?,F(xiàn)在,讓我們來運(yùn)行上面的程序,在當(dāng)前目錄中創(chuàng)建我們的數(shù)據(jù)庫 mysql_person.db。您可以根據(jù)需要改變路徑。保存上面代碼到 sqlite.py 文件中,并按如下所示執(zhí)行。如果數(shù)據(jù)庫成功創(chuàng)建,那么會(huì)顯示下面所示的消息:

$chmod +x sqlite.py
$./sqlite.py
Open database successfully

創(chuàng)建表

下面的 Python 代碼段將用于在先前創(chuàng)建的數(shù)據(jù)庫中創(chuàng)建一個(gè)表:

#-*- coding:utf-8 -*-

import sqlite3

conn = sqlite3.connect('mysql_person.db')
print "Opened database successfully";

conn.execute('''CREATE TABLE MT
    (ID INT PRIMARY KEY   NOT NULL,
    NAME      TEXT  NOT NULL,
    AGE      INT   NOT NULL,
    ADDRESS    CHAR(50),
    SALARY     REAL);''')
print "Table created successfully";

conn.close()

上述程序執(zhí)行時(shí),它會(huì)在 test.db 中創(chuàng)建 MT 表,并顯示下面所示的消息:

Opened database successfully
Table created successfully

INSERT 操作

下面的 Python 程序顯示了如何在上面創(chuàng)建的 MT 表中創(chuàng)建記錄:

#-*- coding:utf-8 -*-

import sqlite3

conn = sqlite3.connect('mysql_person.db')
print "Opened database successfully";

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
   VALUES (1, 'Paul', 32, 'California', 20000.00 )");

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
   VALUES (2, 'Allen', 25, 'Texas', 15000.00 )");

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
   VALUES (3, 'Teddy', 23, 'Norway', 20000.00 )");

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
   VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 )");

conn.commit()
print "Records created successfully";
conn.close()

上述程序執(zhí)行時(shí),它會(huì)在 MT 表中創(chuàng)建給定記錄,并會(huì)顯示以下兩行:

Opened database successfully
Records created successfully

SELECT 操作

下面的 Python 程序顯示了如何從前面創(chuàng)建的 MT 表中獲取并顯示記錄:

#-*- coding:utf-8 -*-

import sqlite3

conn = sqlite3.connect('mysql_person.db')
print "Opened database successfully";

cursor = conn.execute("SELECT id, name, address, salary from MT")
for row in cursor:
  print "ID = ", row[0]
  print "NAME = ", row[1]
  print "ADDRESS = ", row[2]
  print "SALARY = ", row[3], "\n"

print "Operation done successfully";
conn.close()

上述程序執(zhí)行時(shí),它會(huì)產(chǎn)生以下結(jié)果:

Opened database successfully
ID = 1
NAME = Paul
ADDRESS = California
SALARY = 20000.0

ID = 2
NAME = Allen
ADDRESS = Texas
SALARY = 15000.0

ID = 3
NAME = Teddy
ADDRESS = Norway
SALARY = 20000.0

ID = 4
NAME = Mark
ADDRESS = Rich-Mond
SALARY = 65000.0

Operation done successfully

UPDATE 操作

下面的 Python 代碼顯示了如何使用 UPDATE 語句來更新任何記錄,然后從 COMPANY 表中獲取并顯示更新的記錄:

#-*- coding:utf-8 -*-

import sqlite3

conn = sqlite3.connect('mysql_person.db')
print "Opened database successfully";

conn.execute("UPDATE COMPANY set SALARY = 25000.00 where ID=1")
conn.commit()
print "Total number of rows updated :", conn.total_changes

cursor = conn.execute("SELECT id, name, address, salary from MT")
for row in cursor:
  print "ID = ", row[0]
  print "NAME = ", row[1]
  print "ADDRESS = ", row[2]
  print "SALARY = ", row[3], "\n"

print "Operation done successfully";
conn.close()

上述程序執(zhí)行時(shí),它會(huì)產(chǎn)生以下結(jié)果:

Opened database successfully
Total number of rows updated : 1
ID = 1
NAME = Paul
ADDRESS = California
SALARY = 25000.0

ID = 2
NAME = Allen
ADDRESS = Texas
SALARY = 15000.0

ID = 3
NAME = Teddy
ADDRESS = Norway
SALARY = 20000.0

ID = 4
NAME = Mark
ADDRESS = Rich-Mond
SALARY = 65000.0

Operation done successfully

DELETE 操作

下面的 Python 代碼顯示了如何使用 DELETE 語句刪除任何記錄,然后從 COMPANY 表中獲取并顯示剩余的記錄:

#-*- coding:utf-8 -*-

import sqlite3

conn = sqlite3.connect('mysql_person.db')
print "Opened database successfully";

conn.execute("DELETE from COMPANY where ID=2;")
conn.commit()
print "Total number of rows deleted :", conn.total_changes

cursor = conn.execute("SELECT id, name, address, salary from MT")
for row in cursor:
 print "ID = ", row[0]
 print "NAME = ", row[1]
 print "ADDRESS = ", row[2]
 print "SALARY = ", row[3], "\n"

print "Operation done successfully";
conn.close()

上述程序執(zhí)行時(shí),它會(huì)產(chǎn)生以下結(jié)果:

Opened database successfully
Total number of rows deleted : 1
ID = 1
NAME = Paul
ADDRESS = California
SALARY = 20000.0

ID = 3
NAME = Teddy
ADDRESS = Norway
SALARY = 20000.0

ID = 4
NAME = Mark
ADDRESS = Rich-Mond
SALARY = 65000.0

Operation done successfully

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 在不同系統(tǒng)間遷移Python程序的方法與教程

    在不同系統(tǒng)間遷移Python程序的方法與教程

    本文介紹了幾種將Windows上編寫的Python程序遷移到Linux服務(wù)器上的方法,包括使用虛擬環(huán)境和依賴凍結(jié)、容器化技術(shù)(如Docker)、使用Anaconda環(huán)境以及遠(yuǎn)程桌面連接和配置(作為臨時(shí)方案),通過這些方法,可以有效地解決環(huán)境搭建和依賴安裝問題
    2025-02-02
  • Python淺析迭代器Iterator的使用

    Python淺析迭代器Iterator的使用

    這篇文章主要介紹了Python?迭代器Iterator詳情,迭代器可以幫助我們解決面對復(fù)雜的數(shù)據(jù)場景時(shí),快速簡便的獲取數(shù)據(jù),下文關(guān)于其詳細(xì)介紹,需要的小伙伴可以參考一下
    2022-07-07
  • Django處理枚舉(枚舉模型)及source的使用

    Django處理枚舉(枚舉模型)及source的使用

    本文主要介紹了Django處理枚舉(枚舉模型)及source的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-04-04
  • python實(shí)現(xiàn)簡單登陸系統(tǒng)

    python實(shí)現(xiàn)簡單登陸系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡單登陸系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • python uuid模塊使用實(shí)例

    python uuid模塊使用實(shí)例

    這篇文章主要介紹了python uuid模塊使用實(shí)例,本文給出簡單使用示例,講解uuid1、uuid3、 uuid4、 uuid5這幾個(gè)方法,需要的朋友可以參考下
    2015-04-04
  • 淺談Keras中fit()和fit_generator()的區(qū)別及其參數(shù)的坑

    淺談Keras中fit()和fit_generator()的區(qū)別及其參數(shù)的坑

    這篇文章主要介紹了Keras中fit()和fit_generator()的區(qū)別及其參數(shù)的坑,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python?OpenCV實(shí)現(xiàn)圖像增強(qiáng)操作詳解

    Python?OpenCV實(shí)現(xiàn)圖像增強(qiáng)操作詳解

    由于很多不確定因素,導(dǎo)致圖像采集的光環(huán)境極其復(fù)雜;為了提高目標(biāo)檢測模型的泛化能力,本文將使用python中的opencv模塊實(shí)現(xiàn)常見的圖像增強(qiáng)方法,感興趣的可以了解一下
    2022-10-10
  • 使用Python實(shí)現(xiàn)在Excel工作表中創(chuàng)建、修改及刪除表格區(qū)域

    使用Python實(shí)現(xiàn)在Excel工作表中創(chuàng)建、修改及刪除表格區(qū)域

    在數(shù)據(jù)分析和自動(dòng)化處理的工作中,Excel作為一種強(qiáng)大的工具被廣泛應(yīng)用,而通過Python來操作Excel工作表中的表格,可以極大提高工作效率,下面我們就來學(xué)學(xué)如何使用Python在Excel工作表中創(chuàng)建,修改及刪除表格吧
    2024-12-12
  • Python解析并讀取PDF文件內(nèi)容的方法

    Python解析并讀取PDF文件內(nèi)容的方法

    這篇文章主要介紹了Python解析并讀取PDF文件內(nèi)容的方法,結(jié)合實(shí)例形式分別描述了Python2.7在win32與win64環(huán)境下實(shí)現(xiàn)讀取pdf的相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • Django logging配置及使用詳解

    Django logging配置及使用詳解

    這篇文章主要介紹了Django logging配置及使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07

最新評論