如何通過(guò)pycharm實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的查詢等操作(非多步操作)
pycharm對(duì)數(shù)據(jù)庫(kù)的查詢等操作(非多步操作)
import pymysql import pandas as pd connect = pymysql.connect(host="IP",port=3306,user="user",password="password",database="database",charset="utf8") cur = connect.cursor() sql = '數(shù)據(jù)庫(kù)語(yǔ)句 ' # 查詢到的數(shù)據(jù)條數(shù) res = cur.execute(sql) print(res) # 4、獲取查詢到的數(shù)據(jù) # 方法一:獲取一條查詢數(shù)據(jù) data_all = cur.fetchall() print(data_all)
Pycharm操作數(shù)據(jù)庫(kù)步驟
最近總是有朋友問(wèn)我關(guān)于數(shù)據(jù)庫(kù)的一些問(wèn)題,問(wèn)題雖小,但是解決起來(lái)很麻煩,抽時(shí)間整理一下,包含了多數(shù)問(wèn)題,以“學(xué)生成績(jī)數(shù)據(jù)庫(kù)”實(shí)例的方式展示。在這里,假設(shè)你已經(jīng)準(zhǔn)備好了服務(wù)端,客戶端
服務(wù)端配置
以Ubuntu 20.04 為例,首先你需要配置服務(wù)器,mysql安裝這里省略:
1.開(kāi)啟MySQL遠(yuǎn)程連接
更改配置文件,重啟服務(wù)! 1.cd /etc/mysql/mysql.conf.d 2.sudo vi mysqld.cnf 找到43行左右,加 # 注釋 # bind-address = 127.0.0.1 (或者可以將,127.0.0.1更改為:0.0.0.0) 3.保存退出 4.sudo service mysql restart 5.進(jìn)入mysql修改用戶表host值 use mysql; update user set host='%' where user='root'; 6.刷新權(quán)限 flush privileges; (其實(shí)新版本,無(wú)需刷新,但是刷一下總歸是好的,能解決不必要的麻煩)
2.添加授權(quán)用戶
1. 用root用戶登錄mysql mysql -u root -p 2. 添加用戶 % 表示自動(dòng)選擇可用IP CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 3. 權(quán)限管理 # 增加權(quán)限 grant 權(quán)限列表 on 庫(kù).表 to "用戶名"@"%" with grant option; //注意:新版本無(wú)需字段:identified by“密碼” //如果表示庫(kù)下全部表:庫(kù).* //如果表示所有庫(kù)下全部表:*.* //如果表示多個(gè)庫(kù)和表:a.b,c,d //with grant option這一句表示:可以給下級(jí)分配已有權(quán)限 # 刪除權(quán)限 revoke insert,update,select on 庫(kù).表 from 'user'@'%'; 4. 刷新權(quán)限 flush privileges; 5. 刪除用戶 drop user "用戶名"@"%" #權(quán)限列表 all privileges 、select 、insert ,update,delete,alter等。 庫(kù).表 : *.* 代表所有庫(kù)的所有表
實(shí)例:
1. 創(chuàng)建用戶 mysql>create user 'yym'@'%' identified by '123'; 2. 添加授權(quán)用戶yym,密碼123,對(duì)所有庫(kù)的所有表有所有權(quán)限 mysql>grant all privileges on *.* to 'yym'@'%' with grant option; mysql>flush privileges; 3. 添加用戶duty,密碼123,對(duì)text庫(kù)中所有表有查看,插入權(quán)限 mysql>grant select,insert on text.* to 'duty'@'%' with grant option; mysql>flush privileges; 4. 刪除yym用戶的刪除權(quán)限 mysql>revoke delete on *.* from "yym"@"%"; 5. 刪除用戶duty drop user "duty"@"%";
客戶端配置
1.首先熟悉一下pymysql使用流程
- 建立數(shù)據(jù)庫(kù)連接(db = pymysql.connect(…))
- 創(chuàng)建游標(biāo)對(duì)象(cur = db.cursor())
- 游標(biāo)方法: cur.execute(“insert …”)
- 提交到數(shù)據(jù)庫(kù)或者獲取數(shù)據(jù) : db.commit()/cur.fetchall()
- 關(guān)閉游標(biāo)對(duì)象 :cur.close()
- 斷開(kāi)數(shù)據(jù)庫(kù)連接 :db.close()
2.Pycharm架構(gòu)
import pymysql
database = {
? ? "host": "180.76.***.***",
? ? "port": 3306,
? ? "user": "yym(上文創(chuàng)建的用戶)",
? ? "password": "123456(這里的密碼,不是服務(wù)器密碼,而是你數(shù)據(jù)庫(kù)密碼)",
? ? "database": "text(指定的數(shù)據(jù)庫(kù))",
? ? "charset": "utf8"
}
db = pymysql.connect(**database) //雙星合參,不認(rèn)識(shí)的百度星號(hào)傳參
cur = db.cursor()
try:
? ? name_stu=input("輸入學(xué)生姓名")
? ? sql = "update cls set score=%s where name=%s;"
? ? cur.execute(sql,[1000,name_stu])
? ? db.commit()
except Exception as e:
? ? print(e)
? ? db.rollback()
cur.close()
db.close()以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
基于python的前后端分離的模擬實(shí)現(xiàn)
前后端分離核心是UI界面展示層(View)和數(shù)據(jù)處理層(Model)通過(guò)控制層(Controller)進(jìn)行解耦合,在MVC設(shè)計(jì)模式中,前端主要負(fù)責(zé)數(shù)據(jù)展示和用戶交互(View),后端處理業(yè)務(wù)邏輯和數(shù)據(jù)存儲(chǔ)(Model),通過(guò)API接口進(jìn)行通信,提高了開(kāi)發(fā)效率,便于前后端分工合作,有利于代碼的維護(hù)和迭代2024-10-10
在Python3 numpy中mean和average的區(qū)別詳解
今天小編就為大家分享一篇在Python3 numpy中mean和average的區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-08-08
Python學(xué)習(xí)筆記之變量、自定義函數(shù)用法示例
這篇文章主要介紹了Python學(xué)習(xí)筆記之變量、自定義函數(shù)用法,結(jié)合實(shí)例形式分析了Python變量、自定義函數(shù)的概念、功能、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-05-05
3種Python 實(shí)現(xiàn)酷炫進(jìn)度條的實(shí)用方法
這篇文章主要介紹了3種Python 實(shí)現(xiàn)酷炫進(jìn)度條的實(shí)用方法,文章圍繞Python的相關(guān)資料展開(kāi)對(duì)實(shí)現(xiàn)進(jìn)度條的介紹,需要的小伙伴可以參考一下2022-04-04
Python中ini配置文件讀寫(xiě)的實(shí)現(xiàn)
本文主要介紹了Python中ini配置文件讀寫(xiě)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
Python3將數(shù)據(jù)保存為txt文件的方法
這篇文章主要介紹了Python3將數(shù)據(jù)保存為txt文件的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
Python Http請(qǐng)求json解析庫(kù)用法解析
這篇文章主要介紹了Python Http請(qǐng)求json解析庫(kù)用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11

