pymysql笔记一
PyMySQL 安装
在使用 PyMySQL 之前,我们需要确保 PyMySQL 已安装。
pip install pymysql
pymysq的基本使用
基本语句
import pymysql
# 打开数据库连接
db = pymysql.connect("localhost","testuser","test123","TESTDB" )
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 使用 execute() 方法执行 SQL 查询
cursor.execute("SELECT VERSION()")
# 使用 fetchone() 方法获取单条数据.
data = cursor.fetchone()
print ("Database version : %s " % data)
# 关闭数据库连接
db.close()
数据库创建表操作代码示例
import pymysql
# 链接数据库
db = pymysql.connect("yourhost", "yourname", "yourpassword", "yourdatabase")
# 创建游标对象
cursor = db.cursor()
# 使用execute()方法执行SQL,如果表存在则删除
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
# SQL语句创建表
sql = """
CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT )
"""
cursor.execute(sql)
# 关闭数据库连接
db.close()
数据库插入操作代码示例
import pymysql
config = {
"host":"yourhost",
"user":"yourname",
"password":"yourpassword",
"database":"yourdatabase"
}
db = pymysql.connect(**config)
cursor = db.cursor()
F_name = 'Dawei'
L_name = 'Wang'
age = 20
sex = 'M'
income = 2000
# 注意 %s 外加引号,作为字符,否者mysql会认为是一个column
sql = "INSERT INTO EMPLOYEE (FIRST_NAME, \
LAST_NAME, AGE, SEX, INCOME) VALUES \
('%s', '%s', '%s', '%s', '%s')" %\
(F_name, L_name, age, sex, income)
try:
# 执行SQL语句
cursor.execute(sql)
# 提交到数据库执行,为了及时跟进数据库这句最好加上
db.commit()
except:
# 如果发生错误则回滚
db.rollback()
db.close()
数据库查询操作代码示例
import pymysql
config = {
"host":"yourhost",
"user":"yourname",
"password":"yourpassword",
"database":"yourdatabase"
}
db = pymysql.connect(**config)
cursor = db.cursor()
# SQL 查询语句
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > %s" % (1000)
try:
# 执行语句
cursor.execute(sql)
# 获取所有列表记录
results = cursor.fetchall()
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
# 打印结果
print("fname = %s, lname = %s, age = %s, sex = %s, income = %s" % \
(fname, lname, age, sex, income ))
except:
print("Error: unable to fetch data")
db.close()
数据库删除操作代码示例
import pymysql
config = {
"host":"yourhost",
"user":"yourname",
"password":"yourpassword",
"database":"yourdatabase"
}
db = pymysql.connect(**config)
cursor = db.cursor()
# SQL 删除语句
sql = "DELETE FROM EMPLOYEE WHERE AGE > %s" % (20)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
cmd mysql语句
mysql -u root -p #登录
显示数据库列表。
show databases;
显示库中的数据表:
show tables;
显示数据表的结构:
describe 表名;
建库:
create database 库名;
使用数据库
use test;
建表:
use 库名;
create table 表名 (字段设定列表);
删库和删表:
drop database 库名;
drop table 表名;
将表中记录清空:
delete from 表名;(这个清空表只是把数据表内容数据清掉,自增id不会被清掉,自增id会保留)
truncate table 表名;(成功返回0)(自增id也一同会被清掉)
修改密码
update user set password=PASSWORD('新密码') where user='用户名'
。。。。。。