MySQL 数据库下载及安装步骤:https://blog.youkuaiyun.com/lala12d/article/details/82743875
直接连接数据库:(在mysql的安装路径下的bin目录里)
>>>mysql -h 127.0.0.1(或localhost)-P 3306 -u root -p mysql
## -h 127.0.0.1指定IP地址(此处为本机地址);-P 3306指定端口(MySQL的默认端口一般都是3306)
;-u root 指定用户名;-p mysql指定密码
数据库基本操作:
1.create database wangba charset utf8 ; 创建wangba库
出现重复库名情况:
2. show databases; 查看当前mysql下仓库
3.drop database 库名; 删除数据库
5.use mysql 进入某某库
6.show tables ; 查看库中的所有表
7.create table student(name varchar(30),sex varchar(30),class text); 创建student表格
8.desc student; 查看表格结构
9.insert into student (name,sex,class) value ('lisi','nan','301'); 插入表格数据
10.select * from student ; 查看表所有数据
11.delete from std; 删除stud整个表
扩展:
select * from student limit 10 ;查表前十数据
select count(*) from 表名; 查表内数据总量
12.delete from student ;删整个表
delete from student where sex='nan'; # where…………精准定位
或sex like 'nan';#模糊查询
13.update student set class='9999'; 更新全表(将全表中的class数值全改为9999)
14.update student set class='777' where sex='nan';#将满足条件sex='nan'的数值改为'777'(条件永远放在后)
用pycharm实现在python环境下连接数据库:
import pymysql #实现代码连接mysql的包
conn=pymysql.connect(host='127.0.0.1',port=3306,user='root',passwd='mysql',db='wangba',charset='utf8') #db为库名
cur=conn.cursor()#连接游标工具变量----用于执行增删改查语句
sql_cha="""select * from xuesheng ;""" #查语句
cur.execute(sql_cha)#游标执行查语句
aaaa=cur.fetchone()#只适用于查,可以看查的结果,其他情况下不用
.fetchall()#查所有
conn.commit()#只要执行了增删改,都执行此步,除查以外
cur.close()#关闭游标工具
conn.close()#断开连接mysql
举例:(注册登录)
import pymysql
lianjie= pymysql.connect(host="127.0.0.1", port=3306, user="root", passwd="mysql", db="jjj", charset="utf8")
cur = lianjie.cursor()
def zhuce():
username=input('请输入账号:')
password=input('请输入密码:')
if len(username)<=9 and len(username)>0 or len(password)>9 and len(password)>0:
if username.isdigit():
if password.isdigit():
return '密码不可以为纯数字'
else:
for ch in password:
if u'\u4e00' <= ch <= u'\u9fff':
return '密码不可包含中文'
sql = """select username from qq_database;"""
cur.execute(sql)
aaa=cur.fetchall()
for i in aaa:
if username in i:
return '您的账号已注册'
sql2="""insert into qq_database (username,password) value ('%s','%s')"""%(username,password)
cur.execute(sql2)
lianjie.commit()
return '注册成功'
else:
return "账号必须为纯数字"
else:
return '账号密码超出范围'
def denglu():
username = input('请输入账号:')
password = input('请输入密码:')
if len(username) <= 9 and len(username) > 0 or len(password) > 9 and len(password) > 0:
if username.isdigit():
if password.isdigit():
return '密码不可为纯数字'
else:
for ch in password:
if u'\u4e00' <= ch <= u'\u9fff':
return '密码不可包含中文'
sql1="""select username from qq_database;"""
cur.execute(sql1)
aa=cur.fetchall()
for zhanghao in aa:
if username in zhanghao:
sql2="""select username,password from qq_database;"""
cur.execute(sql2)
result2=cur.fetchall()
bb=(username,password)
if bb in result2:
return '登录成功'
else:
return '密码错误'
else:
return '无此账号'
else:
return '账号必须为纯数字'
else:
return '账号密码超过9位'
def run():
while True:
shuru=input('请输入 注册 或登录')
if shuru=='注册':
a=zhuce()
print(a)
elif shuru=='登录':
b=denglu()
print(b)
#
if __name__ == '__main__':
run()
cur.close()
lianjie.close()