32-Python3 MySQL(mysql-connector)
32-Python3 MySQL(mysql-connector)
'''
创建数据库连接
'''
import pymysql mydb = pymysql.connect(
host = '127.0.0.1',
user = 'root',
passwd = 'root',
db = 'jo_db1',
port = 3306,
charset = 'utf8'
)
print('mydb:',mydb) mycursor = mydb.cursor() '''
创建数据库
'''
# mycursor.execute('CREATE DATABASE runoob_db1') ##CREATE DATABASE必须为大写,否则报语法错误 ##输出所有数据库列表
mycursor.execute('SHOW DATABASES')
for x in mycursor:
print(x) '''
创建数据库表
'''
import pymysql
mydb = pymysql.connect(
host = '127.0.0.1',
user = 'root',
passwd = 'root',
database = 'runoob_db1'
)
mycursor = mydb.cursor() ##创建数据库
mycursor.execute('CREATE TABLE site(name VARCHAR(255),url VARCHAR(255))') ##打印输出数据库中所有的表
mycursor.execute('SHOW TABLES')
for x in mycursor:
print(x) ##主键设置:给已创建的表添加主键
mycursor.execute('ALTER TABLE site ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY') ##主键设置:创建表时添加主键
import pymysql
mydb = pymysql.connect(host = '127.0.0.1',user = 'root',passwd = 'root',database = 'runoob_db1' ) mycursor = mydb.cursor()
mycursor.execute('CREATE TABLE site2 (id INT AUTO_INCREMENT PRIMARY KEY ,name VARCHAR (255),site VARCHAR (255))')
'''
插入数据
'''
import pymysql
mydb = pymysql.connect(host = '127.0.0.1',user = 'root',passwd = 'root',database = 'runoob_db1' )
mycursor = mydb.cursor()
mycursor.execute('CREATE TABLE site2 (id INT AUTO_INCREMENT PRIMARY KEY ,name VARCHAR (255),site VARCHAR (255))')
##插入一条数据
val =('RUNOOB','https://www.runoob.com')
mycursor.execute(sql,val)
mydb.commit()
print(mycursor.rowcount,'记录插入成功。') ##批量插入
val = [
('TAOBAO','https://www.taobao.com'),
('Google','https://google.com'),
('BaiDu','https://baidu.com'),
]
mycursor.executemany(sql,val)
mydb.commit()
print(mycursor.rowcount,'批量记录插入成功。')
##获取插入数的id
val = ('Zhihu','https://www.zhihu.com')
mycursor.execute(sql,val)
mydb.commit()
print('1条记录已插入,ID为:',mycursor.lastrowid) '''
查询数据
'''
import pymysql mydb = pymysql.connect(host = '127.0.0.1',user = 'root',passwd = 'root',database = 'runoob_db1')
mycursor = mydb.cursor()
mycursor.execute('SELECT * FROM site2') ##获取所有数据
# myresult = mycursor.fetchall() ##如果只想获取一条数据的话
myresult = mycursor.fetchone() for x in myresult:
print(x) ##where条件语句(完整版)------------------------------------------------------
import pymysql
mydb = pymysql.connect(host = '127.0.0.1',user = 'root',passwd = 'root',database = 'runoob_db1')
mycursor = mydb.cursor()
sql = "select * from site2 where name = 'runoob'"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
##模糊查询完整版
import pymysql
mydb = pymysql.connect(host = '127.0.0.1',user = 'root',passwd = 'root',database = 'runoob_db1')
mycursor = mydb.cursor()
sql = "select * from site2 where site like '%oo%'"
#sql2 = "select * from site2"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
##防止sql注入的
pass
##排序(完整版)
import pymysql
mydb = pymysql.connect(host = '127.0.0.1',user = 'root',passwd = 'root',database = 'runoob_db1')
mycursor = mydb.cursor()
#sql = "select * from site2 order by name " #默认的正排序
sql = "select * from site2 order by name desc" #倒排序
sql = "select * from "
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
##Limit
import pymysql
mydb = pymysql.connect(host = '127.0.0.1',user = 'root',passwd = 'root',database = 'runoob_db1')
mycursor = mydb.cursor()
sql = "select * from site2"
#sql = "select * from site2 order by name " #默认的正排序
#sql = "select * from site2 order by name desc" #倒排序
#sql = "select * from site2 limit 3" # 查询前3条记录
#sql = "select * from site2 limit 2 offset 1" #从第1条数据开始向上取3条记录
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x) '''
删除记录
'''
import pymysql
mydb = pymysql.connect(host = '127.0.0.1',user = 'root',passwd = 'root',database = 'runoob_db1')
mycursor = mydb.cursor() #插入数据
sql= "insert into site2 (name,site) values (%s,%s)"
val = ('Heheda','https://wwww.heheda.com')
mycursor.execute(sql,val)
mydb.commit() #查询所有结果
sql = "select * from site2"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x) #删除数据
sql = "delete from site2 where name = 'Heheda'"
mycursor.execute(sql)
mydb.commit() '''
更新表数据
''' '''
删除表
'''
32-Python3 MySQL(mysql-connector)的更多相关文章
- ubuntu14.04 python3.*连接mysql
先下载pymysql文件,http://webscripts.softpedia.com/script/Database-Tools/PyMySQL-71606.html 我下载的是:PyMySQL- ...
- mysql ODBC connector相关问题
mysql ODBC connector我安装了,怎么就不成功了 进到命令行,运行下边的:C:\>cd \windows\SysWOW64 C:\Windows\SysWOW64>odbc ...
- python3操作mysql教程
一.下载\安装\配置 1. python3 Python3下载网址:http://www.python.org/getit/ 当前最新版本是python3.2,下载地址是 http://www.pyt ...
- Python3操作MySQL,查询数据并保存到文件中
我们在测试过程中,可能需要到数据库中拉去一些数据,为从测试准备.比如最近在做接口性能测试的时候,就需要很多数据来支撑,所以就需要的数据库去查询数据,下面就是python3 查询 mysql 并且保存到 ...
- python3与mysql交互
1.安装pymysql模块 pip3 install pymysql3 2.pymysql的简单使用: # /usr/bin/env python3 import pymysql class Mysq ...
- 学以致用二十九-----python3连接mysql
在前面安装好mysql后,在一个项目中需要连接mysql,python是3.6版本 python3连接mysql需要安装pymysql模块 可以通过pip安装 查看pip 版本 pip --versi ...
- Python3.5 MySQL 数据库连接
Python3.5 MySQL 数据库连接 在本文中介绍 Python3 使用PyMySQL连接数据库,并实现简单的增删改查 为什么使用PyMySQL? PyMySQL是在Pyhton3.x版本中用 ...
- mongodb/python3.6/mysql的安装
1 下载与解压 在官网下载mongodb安装包 tar -zxvf mongodb-linux-x86_64-ubuntu1604-3.4.0.tgz 2 移动安装文件 sudo mv mongodb ...
- python3与mysql交互:pymysql
python3与mysql交互 1.安装pymysql模块 pip3 install pymysql3 2.pymysql的简单使用: # /usr/bin/env python3 import py ...
- 编译和使用 MySQL C++ Connector
记录编译 mysql C and C++ connector 和简单访问数据库. 环境: vs2012, mysql 5.6.13, 基于x64 0. 软件包 mysql http://dev.my ...
随机推荐
- favicon.ico 网站小图标标识
随便打开一个网页:比如 http://www.baidu.com/ 可以看到在浏览器的标签头上面显示了一个图标,这个图标是:,也就是我们常说的favicon.ico. 由于这篇文章主要讨论favico ...
- c++基本函数
std::abs 求绝对值函数 double abs (double x); float abs (float x); long double abs (long double x); std::sw ...
- grafana----alert
Alert只有grafana V4.0以上. Introduction(介绍) Grafana中的alert允许在dashboard panels你附加一些规则.当你保存仪表板Grafana将提取的报 ...
- 关于Dosbox0.74无法使用masm命令
今天尝试在dosbox里编译asm源代码文件 但是提示“illegal command”,也就是非法命令 开始还以为我的dosbox版本不对 但是去网上查阅资料发现别人用这个版本都可以使用 所以百思不 ...
- [No0000C3]StarUML2 全平台破解方法
首先,找到安装目录下的"LicenseManagerDomain.js"文件,路径"StarUML\www\license\node\LicenseManagerDoma ...
- CSS3 transform 属性
CSS3 transform 属性 语法: transform: none|transform-functions; 值 描述 none 定义不进行转换. matrix(n,n,n,n,n,n) 定义 ...
- 【每日一题】 uva-232 模拟+输出要求很严格
https://cn.vjudge.net/problem/UVA-232 uva的题,结尾不能多\n,空格什么的 反正就是个中型模拟,题目多读就行 #define _CRT_SECURE_NO_WA ...
- C和C指针小记(一)-字符输入,函数,ASCII扩展表
1.连续接收输入字符时 int ch; while(ch != EOF && ch != '\n') ch 为什么被声明为整形,我们不是需要用它来读取字符的嘛? 因为:EOF是一个整形 ...
- Exception 04 : java.lang.ClassNotFoundException: Could not load requested class : org.hsqldb.jdbcDriver
异常详细信息 org.hibernate.boot.registry.classloading.spi.ClassLoadingException: Unable to load class [org ...
- AndroidStudio_ListView
在这里梳理一下ListView的用法: 1.建立一个activity,例如建立一个ListViewActivity,这时将生成两个文件:ListViewActivity.java和activity_l ...