pycharm对数据库的查询等操作(非多步操作)

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 = '数据库语句 '
# 查询到的数据条数
res = cur.execute(sql)
print(res)
# 4、获取查询到的数据
# 方法一:获取一条查询数据
data_all = cur.fetchall()
print(data_all)

Pycharm操作数据库步骤

最近总是有朋友问我关于数据库的一些问题,问题虽小,但是解决起来很麻烦,抽时间整理一下,包含了多数问题,以“学生成绩数据库”实例的方式展示。在这里,假设你已经准备好了服务端,客户端

服务端配置

以Ubuntu 20.04 为例,首先你需要配置服务器,mysql安装这里省略:

1.开启MySQL远程连接

更改配置文件,重启服务!
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.进入mysql修改用户表host值
  use mysql;
  update user set host='%' where user='root';
6.刷新权限
  flush privileges;
 (其实新版本,无需刷新,但是刷一下总归是好的,能解决不必要的麻烦)

2.添加授权用户

1. 用root用户登录mysql
   mysql -u root -p
2. 添加用户 % 表示自动选择可用IP
   CREATE USER 'username'@'host' IDENTIFIED BY 'password';
3. 权限管理

   # 增加权限
   grant 权限列表 on 库.表 to "用户名"@"%"  with grant option; 
   //注意:新版本无需字段:identified by“密码”
   //如果表示库下全部表:库.*                  
   //如果表示所有库下全部表:*.*
   //如果表示多个库和表:a.b,c,d
   //with grant option这一句表示:可以给下级分配已有权限   

   # 删除权限
   revoke insert,update,select on 库.表 from 'user'@'%';
   4. 刷新权限
   flush privileges;
5. 删除用户
   drop user "用户名"@"%"

 
#权限列表


all privileges 、select 、insert ,update,delete,alter等。
库.表 : *.* 代表所有库的所有表

实例:

1. 创建用户
  mysql>create user  'yym'@'%'  identified by '123';
2. 添加授权用户yym,密码123,对所有库的所有表有所有权限
  mysql>grant all privileges on *.* to 'yym'@'%'  with grant option;
  mysql>flush privileges;
3. 添加用户duty,密码123,对text库中所有表有查看,插入权限
  mysql>grant select,insert on text.* to 'duty'@'%'  with grant option;
  mysql>flush privileges;
4. 删除yym用户的删除权限
  mysql>revoke delete on *.* from "yym"@"%";
5. 删除用户duty
  drop user "duty"@"%";

客户端配置

1.首先熟悉一下pymysql使用流程

  • 建立数据库连接(db = pymysql.connect(…))
  • 创建游标对象(cur = db.cursor())
  • 游标方法: cur.execute(“insert …”)
  • 提交到数据库或者获取数据 : db.commit()/cur.fetchall()
  • 关闭游标对象 :cur.close()
  • 断开数据库连接 :db.close()

2.Pycharm架构

import pymysql

database = {
    "host": "180.76.***.***",
    "port": 3306,
    "user": "yym(上文创建的用户)",
    "password": "123456(这里的密码,不是服务器密码,而是你数据库密码)",
    "database": "text(指定的数据库)",
    "charset": "utf8"
}
db = pymysql.connect(**database) //双星合参,不认识的百度星号传参
cur = db.cursor()
try:
    name_stu=input("输入学生姓名")
    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()

以上为个人经验,希望能给大家一个参考,也希望大家多多支持Devmax。

如何通过pycharm实现对数据库的查询等操作(非多步操作)的更多相关文章

  1. 详解前端HTML5几种存储方式的总结

    本篇文章主要介绍了前端HTML5几种存储方式的总结 ,主要包括本地存储localstorage,本地存储sessionstorage,离线缓存(application cache),Web SQL,IndexedDB。有兴趣的可以了解一下。

  2. PhoneGap / iOS上的SQLite数据库 – 超过5mb可能

    我误解了什么吗?Phonegap中的sqlitedbs真的有5mb的限制吗?我正在使用Phonegap1.2和iOS5.解决方法您可以使用带有phonegap插件的原生sqliteDB,您将没有任何限制.在iOS5.1中,Websql被认为是可以随时删除的临时数据…

  3. ios – 领域:如何获取数据库的当前大小

    是否有RealmAPI方法使用RealmSwift作为数据存储来获取我的RealmSwift应用程序的当前数据库大小?

  4. ios – Realm – 无法使用现有主键值创建对象

    我有一个对象有许多狗的人.应用程序有单独的页面,它只显示狗和其他页面显示人的狗我的模型如下我有人存储在Realm中.人有详细页面,我们取,并显示他的狗.如果狗已经存在,我会更新该狗的最新信息并将其添加到人的狗列表中,否则创建新狗,保存并将其添加到人员列表中.这适用于coredata.在尝试用他的狗更新人时,领域会抛出异常无法使用现有主键值创建对象解决方法这里的问题是,即使你正在创建一个全新的Rea

  5. ios – UIWebView中的WebSQL / SQLite数据库的最大大小(phonegap)

    我知道一般来说,Web应用程序的本地存储空间有5MB的限制.本地网页浏览应用程式是否也有这个限制?

  6. ios – Firebase离线存储高级 – 手动同步和进度信息

    >我可以提供一个捆绑数据库–安装App后我可以已经离线查询了Firebase数据?然后我有另一个关于Firebase的主要问题:>JSON存储是伟大的–但是这样我们不关心一个独特的结构,我们必须注意这一点插入总是正确的数据集?我从来没有试图显示实际的进展,但是当您从firebase中检索数据时,始终会在成功检索数据时调用onDataChange方法.https://firebase.google.com/docs/database/android/retrieve-data#read_data_onceC

  7. ios – 如何处理多用户数据库

    我的应用程序就像很多应用程序–它有一个用户输入用户名和密码的登录屏幕,以及登录按钮我的应用程序还使用CoreData来保存大多数用户的业务对象,当然也是用户特定的.我也有一个登出按钮来启用切换用户.这不会发生很多,但仍然是必要的).现在如果不同的用户登录,我需要获取他的具体数据.但是我该如何做呢?

  8. ios – Swift从Firebase数据库中获取特定价值

    我正在尝试从Firebase数据库中获取特定值.我看了一些像谷歌这样的文件,但我做不到.这是数据库的JSON文件:SWIFT代码:我想获得用户的电子邮件价值,而不是每个人.我怎样才能做到这一点?解决方法在您的代码中,快照将包含子值的字典.要访问它们,请将snapshot.value转换为Dictionary,然后访问各个子项是一个快照

  9. ios – Realm Swift:在卸载应用程序后是否可以保留数据库?

    使用realmswift,即使从设备上卸载应用程序,是否可以在设备内存中保留和维护应用程序的领域数据库文件?非常感谢您的帮助.解决方法删除应用程序时,应用程序的所有文件都是剩余的.iOS应用程序是沙盒.这意味着每个应用程序在磁盘中都有自己的空间,并有自己的目录,这些目录充当应用程序及其数据的主页.从iPhone删除应用程序会删除此沙箱,删除与该应用程序关联的所有数据.

  10. ios – 在没有XML的情况下更新sqlite数据库

    我的应用程序需要来自sqlite数据库的数据.它将附带此数据库的一个版本,但我需要定期更新它(很可能每月一次).通常情况下,我一直在通过我设置的一堆网络服务将我的应用程序的其他部分的更新作为XML发送,但我现在正在处理的这个特定数据库非常大(大约20-30MB),而且我当我尝试以这种方式发送时出现超时错误.我尝试将数据库放在我的公司服务器上,然后将其下载到NSData对象中.然后我将该数据对象保存

随机推荐

  1. 10 个Python中Pip的使用技巧分享

    众所周知,pip 可以安装、更新、卸载 Python 的第三方库,非常方便。本文小编为大家总结了Python中Pip的使用技巧,需要的可以参考一下

  2. python数学建模之三大模型与十大常用算法详情

    这篇文章主要介绍了python数学建模之三大模型与十大常用算法详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感想取得小伙伴可以参考一下

  3. Python爬取奶茶店数据分析哪家最好喝以及性价比

    这篇文章主要介绍了用Python告诉你奶茶哪家最好喝性价比最高,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧

  4. 使用pyinstaller打包.exe文件的详细教程

    PyInstaller是一个跨平台的Python应用打包工具,能够把 Python 脚本及其所在的 Python 解释器打包成可执行文件,下面这篇文章主要给大家介绍了关于使用pyinstaller打包.exe文件的相关资料,需要的朋友可以参考下

  5. 基于Python实现射击小游戏的制作

    这篇文章主要介绍了如何利用Python制作一个自己专属的第一人称射击小游戏,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起动手试一试

  6. Python list append方法之给列表追加元素

    这篇文章主要介绍了Python list append方法如何给列表追加元素,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  7. Pytest+Request+Allure+Jenkins实现接口自动化

    这篇文章介绍了Pytest+Request+Allure+Jenkins实现接口自动化的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  8. 利用python实现简单的情感分析实例教程

    商品评论挖掘、电影推荐、股市预测……情感分析大有用武之地,下面这篇文章主要给大家介绍了关于利用python实现简单的情感分析的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

  9. 利用Python上传日志并监控告警的方法详解

    这篇文章将详细为大家介绍如何通过阿里云日志服务搭建一套通过Python上传日志、配置日志告警的监控服务,感兴趣的小伙伴可以了解一下

  10. Pycharm中运行程序在Python console中执行,不是直接Run问题

    这篇文章主要介绍了Pycharm中运行程序在Python console中执行,不是直接Run问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

返回
顶部