Navicat使用与python操作数据库
一、Navicat使用
1、测试+链接数据库,新建库

2、新建表,新增字段+类型+约束


3、设计表:外键

4、新建查询

5、建立表模型


二、python操作数据库
pymysql使用步骤:
1、与数据库服务器建立链接
2、获取游标对象(用于发送和接收数据)
3、用游标执行sql语句
4、使用fetch方法来获取执行的结果
5、关闭链接:先关游标再关链接
import pymysql # 创建一个链接得到一个链接对象
conn = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
password='',
database='day41',
charset='utf8'
) # 获取游标对象 pymysql.cursors.DictCursor返回的结果为字典,默认是元组类型
cursor = conn.cursor(pymysql.cursors.DictCursor) # 执行sql, 如果是select 语句返回的是查询的条数
res = cursor.execute('select * from class')
print(res) # 获取查询的结果
# print(cursor.fetchall()) # 获取所有查询到的数据
print(cursor.fetchone()) # 一个一个的查# cursor.scroll(1, 'absolute') # 绝对移动,参照开始位置
cursor.scroll(1, 'relative') # 相对移动,往后移动一个位置# 关闭链接
cursor.close()
conn.close()
三、sql注入以及增删改查
1、SQL注入: 千万不要手动拼接(关键性参数)查询条件,查:校验用户和密码是否正确
import pymysql conn = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
password='',
database='day41_1',
charset='utf8', )
cursor = conn.cursor(pymysql.cursors.DictCursor)
username = input('username:>>>')
password = input('password:>>>') sql = 'select * from userinfo where name=%s and password=%s' # sql注入,千万不要手动拼接(关键性参数)查询条件
print(sql) res = cursor.execute(sql, (username, password)) if res:
pass
else:
print('用户名和密码错误')
2、增:往表userinfo内增加用户名和密码
import pymysql conn = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
password='',
database='day41_1',
charset='utf8',
autocommit=True # 和下面的conn.commit()是同一个意思,选一个就好
)
cursor = conn.cursor(pymysql.cursors.DictCursor)
username = input('username:>>>')
password = input('password:>>>') sql = 'insert into userinfo(name,password) values(%s,%s)'
res = cursor.execute(sql, (username, password))
# conn.commit() # 确认数据无误之后 commit之后才会将数据真正修改到数据库
print(sql) if res:
pass
else:
print('用户名和密码错误')
3、改:修改指定userinfo表中id的用户名或者密码
import pymysql conn = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
password='',
database='day41_1',
charset='utf8',
autocommit=True # 此行和下面的conn.commit()意思相同,任选一种即可
) cursor = conn.cursor(pymysql.cursors.DictCursor)
sql = "update userinfo set name='jerry' where id =4"
res = cursor.execute(sql)
# conn.commit() # 确认数据无误之后 commit之后才会将数据真正修改到数据库
print(sql)
if res:
pass
else:
print('用户名或密码错误!')
Navicat使用与python操作数据库的更多相关文章
- python操作数据库
一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...
- python操作数据库之批量导入
python操作数据库之批量导入 Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进. Python具有丰富和强大的库.它常被昵称为胶水语言,能够把用其他语言制作的 ...
- 零基础学Python--------第11章 使用Python操作数据库
第11章 使用Python操作数据库 11.1 数据库编程接口 在项目开发中,数据库应用必不可少.虽然数据库的种类有很多,如SQLite.MySQL.Oracle等,但是它们的功能基本都是一样的,为了 ...
- python操作数据库PostgreSQL
1.简述 python可以操作多种数据库,诸如SQLite.MySql.PostgreSQL等,这里不对所有的数据库操作方法进行赘述,只针对目前项目中用到的PostgreSQL做一下简单介绍,主要包括 ...
- Python操作数据库之 MySQL
Python操作数据库之MySQL 一.安装Python-MySQLdb模块 Python-MySQLdb是一个操作数据库的模块,Python 通过它对 mysql 数据实现各种操作. 如果要源码安装 ...
- Python接口测试实战3(上)- Python操作数据库
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python学习笔记 - day11 - Python操作数据库
MySQL的事务 MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关,MySQL的两种引擎如下: 1.MyISAM:不支持事务,用于只读程序提高性能 2.InnoDB:支持ACID ...
- 孤荷凌寒自学python第四十四天Python操作 数据库之准备工作
孤荷凌寒自学python第四十四天Python操作数据库之准备工作 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天非常激动地开始接触Python的数据库操作的学习了,数据库是系统化设计 ...
- Python操作数据库及hashlib模块
一.hashlib模块 hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA51 ...
随机推荐
- HDU 1069 Monkey and Banana (动态规划、上升子序列最大和)
Monkey and Banana Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- Tomcat部署SSL证书过程中遇到的问题
在CentOS7中Tomcat部署SSL证书时遇到的问题 1.配置servlet.xml 配置tomcat/conf/server.xml 加入以下代码 <Connector port=&quo ...
- springboot2.0自适应效果错误响应
实现效果当访问thymeleaf渲染页面时,显示的是自定义的错误页面 当以接口方式访问时,显示的是自定义的json数据响应 1. 编写自定义异常 package cn.jfjb.crud.except ...
- 786B - Legacy(线段树 + 最短路)线段树优化建图
题意: 就是给定一张n nn个点的图,求源点s ss到每个点的单源最短路.这张图共有q组边,连边方式有3种: a→b ,边权为w的单向边:a→[l,r] ,即a到连续区间[l,r]中的每一个点都有一条 ...
- google浏览器切换成中文
新浪下载地址:http://down.tech.sina.com.cn/content/40975.html 默认字体好像是西班牙语 1.浏览器地址chrome://settings/language ...
- install - 复制文件并设置属性
SYNOPSIS[总览] install [options] [-s] [--strip] source dest install [options] [-s] [--strip] source... ...
- python语音提示
#coding:utf8 import win32com.client speaker = win32com.client.Dispatch("SAPI.SpVoice") whi ...
- tomcat+Redis
Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同开发而成. Tomca ...
- Linux man学习
5 man man是manual的简写,Linux求助的工具 man 命令行,如 man date 在我学习鸟哥私房菜的时候,也称man为man page 手册页入口:1 用户指令2 ...
- (转) weblogic 12c忘记密码
weblogic安装后,很久不用,忘记访问控制台的用户名或者密码,可通过以下步骤来重置用户名密码. 说明:%DOMAIN_HOME%:指WebLogic Server 域(Domain)目录 我的是: ...