mysql基础(五)之pymysql

pymysql模块:      pip3 install pymysql -i https://pypi.douban.com/simple      Python模块:对数据库进行操作(SQL语句)

      1. Python实现用户登录      2. MySQL保存数据                - 连接、关闭(游标)                - execute()   -- SQL注入                - 增删改: conn.commit()     可以返回受影响的行数                - fetchone fetchall                - 获取插入数据自增ID                -scroll 移动游标位置
 1 #实现增删改
 2
 3 import pymysql
 4 conn = pymysql.connect(host=‘localhost‘,user=‘root‘,password=‘123‘,database=‘db1‘)
 5 cursor=conn.cursor()
 6
 7 sql="insert into userinfo4(username,password) values(‘root‘,‘123123‘)"
 8 r = cursor.execute(sql)  # 返回受影响的行数
 9
10 sql = "insert into userinfo(username,password) values(%s,%s)"
11 r = cursor.executemany(sql,[(‘egon‘,‘sb‘),(‘laoyao‘,‘BS‘)])
12
13 conn.commit()           # 增删改操作必须进行提交
14 print(r)
15 cursor.close()
16 conn.close()
17
18
19 # 查
20 import pymysql
21 conn = pymysql.connect(host="localhost",user=‘root‘,password=‘123‘,database="db1")
22 cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
23 sql = "select * from userinfo4"
24 cursor.execute(sql)
25
26 cursor.scroll(1,mode=‘relative‘)  # 相对当前位置移动
27 cursor.scroll(2,mode=‘absolute‘) # 相对绝对位置移动
28 result = cursor.fetchone()        #获取一行
29 print(result)
30
31 result = cursor.fetchall()        #获取全部
32 print(result)
33
34 result = cursor.fetchmany(2)      #获取指定行数  一般不用,而在sql语句中限定行数
35 print(result)
36 cursor.close()
37 conn.close()
38
39
40 #获取新插入数据的自增id       cursor.lastrowid
41 # 当为一张表插入一行数据时,并不知道它的自增id是多少,那么在对他的相关联的表(外键)进行插入操作时可以使用lastrowid查看id
42 import pymysql
43
44 conn = pymysql.connect(host="localhost",user=‘root‘,password=‘123‘,database="db1")
45 cursor = conn.cursor()
46 sql = "insert into userinfo4(username,password) values(‘asdfasdf‘,‘123123‘)"
47 cursor.execute(sql)
48 conn.commit()
49 print(cursor.lastrowid)
50 cursor.close()
51 conn.close()

sql注入:

 1 import pymysql
 2 name= input(‘用户名‘)
 3 passwd=input(‘密码‘)
 4 conn =pymysql.connect(host=‘localhost‘,user=‘root‘,password=‘123‘,database=‘db1‘,charset=‘utf8‘)
 5 cursor=conn.cursor()
 6
 7 cursor=conn.cursor(cursor=pymysql.cursors.DictCursor)   #设置返回的数据的格式为字典
 8
 9
10 sql=‘select * from userinfo4 where username="%s" and password="%s"‘%(name,passwd)
11
12 #sql=‘select * from userinfo4 where username="alex" -- " and password="%s"‘%(name,passwd)
13
14 cursor.execute(sql)
15 result =cursor.fetchone()
16
17 cursor.close()
18 conn.close()
19
20 if result:
21     print(‘yes!‘)
22 else:
23     print(‘no‘)

Navicat(客户端)    创建表    新建查询    转储sql文件

数据备份:     备份数据和表结构     mysqldump -u root db1 > db1.sql -p            当前目录下     备份表结构     mysqldump -u root -d db1 > db1.sql -p导入数据库:     create databases db5;     mysql -u root -d db5 < db1.sql -p
时间: 2024-07-31 00:12:50

mysql基础(五)之pymysql的相关文章

MYSQL基础五--数据修改

1.添加单列 ALTER TABLE tab_red(表名)ADD age(列名) INT(列类型)约束 {FIRST|AFTER  dname(在dname列之后)}: ALTER TABLE tab_red ADD age INT NOT NULL DEFAULT 10; 2.添加多列 ALTER TABLE tab_red(表名)ADD (dname varchar(30),age int unsigned); 添加多列不能设置列的位置,不能放在第一列和某一列之间.只能默认在最后. 3.删

如鹏网学习笔记(五)MySql基础

MySQL基础 一.数据库概念 1,网友装备信息.论坛帖子信息.QQ好友关系信息.学籍管理系统中的学生信息等都要"持久化"的保存到一个地方, 如果通过IO写到文件中,那么会非常麻烦,而且不利于多人共享数据 2,我们开发大部分软件.网站都要大量用到书库,甚至开发游戏.手机App也要用到数据库,公司面试的时候数据库的考核在三分之一以上 3,数据库(DataBase)是保存数据的仓库,可以方便的把数据放进去,并且把数据根据各种需要取出来. 数据库管理系统(Database Managemen

MySQL基础(五)——视图

MySQL基础(五)--视图

数据库系统(五)---MySQL基础

一.SQL基本概念: SQL 已经成为关系数据库的标准语言,是一种数据库查询和程序设计语言,用 于存取数据以及查询.更新和管理关系数据库系统. 功能不仅仅是查询,还包括数据定义.数据操纵和数据控制等于数据库有关的 一系列功能. 四大功能:数据查询.数据定义.数据操纵和数据控制. 1)嵌入式和动态 SQL 规则 规定了 SQL 语句在高级程序设计语言中使用的规范方法,以便适应较为复杂的 应用. 2)SQL 调用和会话规则 调用包括 SQL 例程和调用规则,以便提高 SQL 的灵活性.有效性.共享性

MySQL基础实战

一.数据库基础: DBMS:数据库管理系统(Database Management System) RDBMS:关系数据库管理系统(Relational Database Management System) C/S:通过专有协议 关系模型:表(行,列),二维关系 范式:第一范式,第二范式,第三范式: 关系运算: 选择 投影 数据库:表,索引,视图(虚表) SQL:结构化查询语言 DDL:数据定义语言 DML:数据操作语言 编程接口: 自行定义存储过程 自行定义存储函数 触发器: 时间调度器:类

mysql基础知识总结

一.连接数据库 mysql -u root -p 默认连接到本地的数据库 mysql -h 192.168.12.12 -u root -p 连接远程的的数据库 二.基本命令 1.show databases;---------------------------显示数据库中的库 2.create database 数据库名-------------------创建一个数据库 3.use 表名称;-------------------------------使用表 4.show tables;-

mysql基础itcast笔记

1. 课程回顾 mysql基础 1)mysql存储结构: 数据库 -> 表 -> 数据   sql语句 2)管理数据库: 增加: create database 数据库 default character utf8; 删除: drop database 数据库; 修改: alter database 数据库 default character gbk; 查询: show databases / show create database 数据库; 3) 管理表: 选择数据库:use 数据库; 增

MySQL基础知识

MySQL基础知识: 一. 知识点:        1. SQL分类:按照其功能不同,分为3中类别           DDL(Data Defintion Language):数据定义语句,用于定义不同的数据段.数据库.表.列.索引等.常用的语句关键字包括create.drop.alter等;             DML(Data Manipulation Language):数据操纵语句,用于添加.删除.更新和查询数据库记录,并检查数据的完整性.常用的语句关键字主要包括insert.de

MySQL基础2

1. 课程回顾mysql基础 1)mysql存储结构: 数据库 -> 表 -> 数据 sql语句 2)管理数据库: 增加: create database 数据库 default character utf8; 删除: drop database 数据库; 修改: alter database 数据库 default character gbk; 查询: show databases / show create database 数据库; 3) 管理表: 选择数据库:use 数据库; 增加:

MYSQL 基础操作

1.MySQL基础操作 一:MySQL基础操作 1:MySQL表复制 复制表结构 + 复制表数据 create table t3 like t1; --创建一个和t1一样的表,用like(表结构也一样) insert into t3 select * from t1; --t1的数据全部拿过来,注意是表结构一致才select* ,否则选择相应的的字段列插入 create table t1( id int unsigned not null auto_increment primary key,