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使用流程

  1. 建立数据库连接(db = pymysql.connect(…))
  2. 创建游标对象(cur = db.cursor())
  3. 游标方法: cur.execute(“insert …”)
  4. 提交到数据库或者获取数据 : db.commit()/cur.fetchall()
  5. 关闭游标对象 :cur.close()
  6. 断开数据库连接 :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()

#至此,一个Pycharm数据库操作实例结束,如何开启3306端口,我在这篇文章已经写过了:开启Mysql 3306端口远程访问.

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Flask中使用PyCharm插入数据库,需要先安装相应的数据库驱动程序和Flask扩展。然后,您可以使用SQLAlchemy等ORM工具来连接和操作数据库。在PyCharm中,您可以使用内置的数据库工具来管理和查询数据库。具体的步骤和代码实现可以参考Flask和PyCharm的官方文档和教程。 ### 回答2: 在使用Flask和PyCharm插入数据库时,可以按照以下步骤进行操作: 1. 首先,确保已经安装了Flask和PyCharm,并且已经配置了数据库连接。 2. 在项目文件夹中创建一个新的Python文件,用于编写数据库插入的代码。 3. 导入必要的模块和库,例如flask_sqlalchemy和数据库相关的模块。 4. 定义数据库表模型,可以使用ORM(对象关系映射)来创建数据库表。 5. 在应用程序的配置中,配置数据库连接的相关信息,例如数据库的URL和其他连接参数。 6. 创建一个视图函数,用于具体处理插入数据库的逻辑。在该函数中,首先创建一个数据库实例,然后使用该实例进行数据库插入操作。 7. 在视图函数中,将需要插入数据库的数据传递给数据库实例,调用插入方法将数据插入到数据库中。 8. 保存并提交事务,以确保数据的插入操作被正确执行。 9. 在Flask应用程序中注册视图函数,使其可以在特定的URL被访问到。 10. 运行Flask应用程序,并通过访问对应的URL来触发插入数据库的逻辑。 总结: 在Flask和PyCharm中插入数据库,需要导入相关库和模块,配置数据库连接信息,定义数据库表模型,编写视图函数来处理插入操作,并注册视图函数以使其可以被访问到。 ### 回答3: 不好意思,您给出的问题有点模糊,不太清楚您具体想要了解关于flask-pycharm插入数据库的内容。不过,我可以给您提供一些基本的关于如何在Flask项目中使用PyCharm插入数据库的信息。 在Flask项目中使用PyCharm插入数据库,您需要先进行一些准备工作。首先,您需要安装相应的数据库驱动,例如MySQL的驱动程序pymysql,或者其他数据库的驱动程序,根据您具体使用的数据库而定。 接下来,您需要在您的Flask项目中配置数据库连接。在项目的配置文件中,您可以使用类似于以下的代码配置数据库连接: ``` app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://username:password@localhost/database_name' ``` 其中,`username`和`password`是您自己数据库的用户名和密码,`localhost`是数据库所在的主机地址,`database_name`是您所使用的数据库的名称。您也可以根据实际情况使用其他数据库的连接字符串。 一旦您配置好数据库连接,接下来就可以在您的Flask应用程序中使用数据库了。您可以使用SQLAlchemy库来进行数据库的插入操作。首先,您需要在您的代码中导入SQLAlchemy模块: ``` from flask_sqlalchemy import SQLAlchemy ``` 然后,您可以创建一个数据库对象,并配置它与您的Flask应用程序关联: ``` db = SQLAlchemy(app) ``` 接下来,则可以使用这个对象进行数据库操作,例如插入数据。您可以创建一个数据模型来定义您要插入的数据表的结构,然后使用这个模型来插入数据。例如,假设您有一个名为`User`的数据模型,您可以使用以下代码来创建一个新的用户并插入到数据库中: ``` user = User(username='testuser', password='testpassword') db.session.add(user) db.session.commit() ``` 这将会在数据库的`User`表中插入一条新的用户数据。 综上所述,以上是一个简单的关于如何在Flask项目中使用PyCharm插入数据库的概述。具体的实现方式可能会因为您使用的数据库和数据模型的不同而有所不同,但这个过程的基本思路是类似的。希望这些信息能对您有所帮助。如果您有更具体的问题,欢迎继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值