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

Python?數(shù)據(jù)庫(kù)操作SQL基礎(chǔ)

 更新時(shí)間:2023年06月09日 09:28:26   作者:移動(dòng)安全星球  
在本章節(jié)中,我們將討論?Python?數(shù)據(jù)庫(kù)操作的基礎(chǔ)知識(shí),重點(diǎn)關(guān)注?SQL即Structured?Query?Language,結(jié)構(gòu)化查詢(xún)語(yǔ)言,SQL?是用于管理關(guān)系型數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)編程語(yǔ)言,可以用來(lái)執(zhí)行數(shù)據(jù)定義、數(shù)據(jù)操作和數(shù)據(jù)控制等任務(wù)

SQL 基礎(chǔ)

SQL 主要分為以下幾類(lèi)操作:

  • 數(shù)據(jù)定義語(yǔ)言(DDL,Data Definition Language):用于定義數(shù)據(jù)庫(kù)結(jié)構(gòu)的操作,如創(chuàng)建、修改、刪除表結(jié)構(gòu)等。常用語(yǔ)句包括 CREATE、ALTER、DROP 等。
  • 數(shù)據(jù)操作語(yǔ)言(DML,Data Manipulation Language):用于操作數(shù)據(jù)庫(kù)中的數(shù)據(jù),如插入、更新、刪除數(shù)據(jù)等。常用語(yǔ)句包括 INSERTUPDATE、DELETE 等。
  • 數(shù)據(jù)查詢(xún)語(yǔ)言(DQL,Data Query Language):用于查詢(xún)數(shù)據(jù)庫(kù)中的數(shù)據(jù)。常用語(yǔ)句為 SELECT。
  • 數(shù)據(jù)控制語(yǔ)言(DCL,Data Control Language):用于控制數(shù)據(jù)庫(kù)訪問(wèn)權(quán)限和事務(wù)處理,如授權(quán)、撤銷(xiāo)權(quán)限等。常用語(yǔ)句包括 GRANT、REVOKE、COMMIT、ROLLBACK 等。

接下來(lái),我們將學(xué)習(xí) SQL 的基本語(yǔ)法和操作。

數(shù)據(jù)庫(kù)和表的創(chuàng)建

創(chuàng)建一個(gè)數(shù)據(jù)庫(kù):

CREATE DATABASE mydb;

創(chuàng)建一個(gè)表:

CREATE TABLE users (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    age INT NOT NULL,
    email VARCHAR(100)
);

數(shù)據(jù)的插入、查詢(xún)、更新和刪除

插入數(shù)據(jù):

INSERT INTO users (name, age, email) VALUES ('Alice', 30, 'alice@example.com');

查詢(xún)數(shù)據(jù):

SELECT * FROM users; -- 查詢(xún)所有數(shù)據(jù)
SELECT * FROM users WHERE age > 25; -- 查詢(xún)年齡大于 25 的用戶(hù)
SELECT name, email FROM users; -- 只查詢(xún)用戶(hù)名和電子郵件

排序、分組和聚合:

SELECT * FROM users ORDER BY age DESC; -- 按年齡降序排序
SELECT age, COUNT(*) FROM users GROUP BY age; -- 按年齡分組,統(tǒng)計(jì)每個(gè)年齡段的用戶(hù)數(shù)量
SELECT AVG(age) FROM users; -- 計(jì)算平均年齡

更新數(shù)據(jù):

UPDATE users SET age = 31 WHERE name = 'Alice'; -- 將名為 Alice 的用戶(hù)年齡更新為 31

刪除數(shù)據(jù):

DELETE FROM users WHERE id = 1; -- 刪除 id 為 1 的用戶(hù)

索引、連接和子查詢(xún)

創(chuàng)建索引:

CREATE INDEX idx_users_email ON users (email); -- 為 email 列創(chuàng)建索引

連接表(以 INNER JOIN 為例):

-- 假設(shè)有另一個(gè)表 orders,包含 user_id 和 order_date 列
SELECT users.name, orders.order_date
FROM users
INNER JOIN orders ON users.id = orders.user_id;

子查詢(xún):

SELECT * FROM users WHERE age > (SELECT AVG(age) FROM users); -- 查詢(xún)年齡大于平均年齡的用戶(hù)

Python 中的數(shù)據(jù)庫(kù)操作

為了在 Python 中操作數(shù)據(jù)庫(kù),我們需要使用相應(yīng)的數(shù)據(jù)庫(kù)適配器。以 MySQL 為例,我們可以使用 mysql-connector-python 庫(kù)。首先,安裝該庫(kù):

pip install mysql-connector-python

然后,你可以使用以下代碼連接到 MySQL 數(shù)據(jù)庫(kù)并執(zhí)行 SQL 語(yǔ)句:

import mysql.connector
# 連接數(shù)據(jù)庫(kù)
cnx = mysql.connector.connect(
    host='localhost',
    user='your_username',
    password='your_password',
    database='mydb'
)
# 創(chuàng)建游標(biāo)
cursor = cnx.cursor()
# 執(zhí)行 SQL 語(yǔ)句
cursor.execute('SELECT * FROM users')
# 獲取查詢(xún)結(jié)果
result = cursor.fetchall()
for row in result:
    print(row)
# 關(guān)閉游標(biāo)和連接
cursor.close()
cnx.close()

以上就是 Python 數(shù)據(jù)庫(kù)操作及 SQL 基礎(chǔ)的相關(guān)內(nèi)容。為了更好地學(xué)習(xí)和理解這些知識(shí)點(diǎn),建議你在實(shí)際項(xiàng)目中親自動(dòng)手操作,逐漸積累經(jīng)驗(yàn)

更多關(guān)于Python操作SQL的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python進(jìn)階collections標(biāo)準(zhǔn)庫(kù)使用示例詳解

    python進(jìn)階collections標(biāo)準(zhǔn)庫(kù)使用示例詳解

    這篇文章主要為大家介紹了python進(jìn)階collections標(biāo)準(zhǔn)庫(kù)使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • python copy模塊中的函數(shù)實(shí)例用法

    python copy模塊中的函數(shù)實(shí)例用法

    在本篇內(nèi)容里小編給大家整理了關(guān)于python copy模塊的基礎(chǔ)知識(shí)點(diǎn)及實(shí)例用法,有需要的朋友們可以跟著學(xué)習(xí)下。
    2021-09-09
  • python解釋器安裝教程的方法步驟

    python解釋器安裝教程的方法步驟

    這篇文章主要介紹了python解釋器安裝教程的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Python基于字典實(shí)現(xiàn)switch case函數(shù)調(diào)用

    Python基于字典實(shí)現(xiàn)switch case函數(shù)調(diào)用

    這篇文章主要介紹了Python基于字典實(shí)現(xiàn)switch case函數(shù)調(diào)用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Flask之請(qǐng)求鉤子的實(shí)現(xiàn)

    Flask之請(qǐng)求鉤子的實(shí)現(xiàn)

    這篇文章主要介紹了Flask之請(qǐng)求鉤子的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • Python?字符串使用多個(gè)分隔符分割成列表的2種方法

    Python?字符串使用多個(gè)分隔符分割成列表的2種方法

    本文主要介紹了Python?字符串使用多個(gè)分隔符分割成列表,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • keras 讀取多標(biāo)簽圖像數(shù)據(jù)方式

    keras 讀取多標(biāo)簽圖像數(shù)據(jù)方式

    這篇文章主要介紹了keras 讀取多標(biāo)簽圖像數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • 基于SQLAlchemy實(shí)現(xiàn)操作MySQL并執(zhí)行原生sql語(yǔ)句

    基于SQLAlchemy實(shí)現(xiàn)操作MySQL并執(zhí)行原生sql語(yǔ)句

    這篇文章主要介紹了基于SQLAlchemy實(shí)現(xiàn)操作MySQL并執(zhí)行原生sql語(yǔ)句,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • python 淘寶爬蟲(chóng)小實(shí)例

    python 淘寶爬蟲(chóng)小實(shí)例

    雙十一即將到來(lái),電商都在做活動(dòng)打折,但打完折是不是真的優(yōu)惠了,需要我們自己斟酌,畢竟我們不能一直關(guān)注著價(jià)格,也自然不能知道現(xiàn)在的價(jià)格比以前高了還是低了,今天讓我們用Python來(lái)爬取一下淘寶吧
    2021-11-11
  • PyTorch零基礎(chǔ)入門(mén)之構(gòu)建模型基礎(chǔ)

    PyTorch零基礎(chǔ)入門(mén)之構(gòu)建模型基礎(chǔ)

    PyTorch是一個(gè)開(kāi)源的Python機(jī)器學(xué)習(xí)庫(kù),基于Torch,用于自然語(yǔ)言處理等應(yīng)用程序,它是一個(gè)可續(xù)計(jì)算包,提供兩個(gè)高級(jí)功能:1、具有強(qiáng)大的GPU加速的張量計(jì)算(如NumPy)。2、包含自動(dòng)求導(dǎo)系統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)
    2021-10-10

最新評(píng)論