一、mysql的登录
1.输入win+r打开终端输入
mysql -u root -p
输入注册时使用的密码
输入exit退出
mysql -h 主机ip地址 -P主机ip端口 -u 用户名 -p 密码
二、mysql的基础指令
一、数据库
1. show databases;展示所有的数据库
2. create database 数据库名 charset=utf8; 创建数据库
3.drop database 数据名; 删除数据库
4.select database(); 查看当前使用的数据库
5.use 数据库名;使用数据库
二、数据表
1. show tables;显示所有表
2.create table 表名( 列名 类型 约束1 约束2 约束3, 列名 类型 约束1 约束2, );
3.desc 表名; 查看表结构
4.drop table 表名; 删除数据表
5. 修改表
alter table 表名 drop 列名;删除列
alter table 表名 add 列名 类型 约束1 约束2; 增加列
alter table 表名 change 原列名 新列名 类型 约束1 约束2;修改列
三、数据(增删改查)
1.增加数据
2.修改数据
update 表名 set 列1 = 值1 where 条件;
3.查看数据
select * from 表名;
select 列 ,列,列 from 表;
select 列 as 别名,列 as 别名 from 表;
select *from 表名 where 条件
四、约束
-
主键约束(PRIMARY KEY):
- 用于唯一标识表中的每条记录。
- 一个表只能有一个主键。
- 主键列不能包含 NULL 值。
-
外键约束(FOREIGN KEY):
- 用于在两个表之间建立链接,并确保引用的数据的完整性。
- 外键值必须对应于另一表中的主键或唯一键值,或者是 NULL。
- 可以有多个外键约束。
-
唯一约束(UNIQUE):
- 保证在某个列或者某几个列的组合中,所有值都是不同的。
- 一个表可以有多个唯一约束。
-
非空约束(NOT NULL):
- 确保某列不能包含 NULL 值。
- 可以应用于表中的多个列。
-
自增长约束(AUTO_INCREMENT):
- 用于主键或唯一索引列,自动为新记录生成唯一的数字序列。
- 每次插入新记录时,该列的值会自动加 1。
-
默认值约束(DEFAULT):
- 如果在插入记录时未指定某列的值,则使用默认值。
- 可以应用于表中的多个列。
-
检查约束(CHECK):
- 从 MySQL 8.0.16 开始引入,用于确保列中的值满足特定的条件。
- 例如,可以限制某个数值列只能包含正数。
五、用户
1.创建用户:
2.分配权限:
3.刷新权限:
4.修改用户密码
5.删除用户: 使用 DROP USER
语句删除用户。
六、外键
七、函数
三、使用python来操作mysql
1.
import pymysql
# # "构建链接实例"
con =pymysql.connect(user="wjc",password="123456")
#
# 构建游标鼠标
cur = con.cursor()
#
cur.close()
con.close()
import pymysql
db_config = {
'host': 'localhost', # 数据库服务器地址,localhost表示本机
'user': 'wjc', # 数据库用户名
'password': '123456', # 用户密码
'database': 'python2407', # 要连接的数据库名
'charset': 'utf8mb4' # 指定字符集
}
# 构建连接实例
con = pymysql.connect(**db_config)
# 构建游标对象
cur = con.cursor()
# 执行查询语句,SELECT 1 是一个简单的查询,用于测试
cur.execute("show tables")
# 使用 fetchone() 获取一条数据
# data = cur.fetchone()
# if data:
# print(data[0])
# else:
# print("No data found.")
# data = cur.fetchone()
# if data:
# print(data[0])
# else:
# print("No data found.")
# fetchmany 获取个数
datas = cur.fetchmany(size=2)
print(datas)#返回一个元组
# datas = cur.fetchall()
# print(datas)
# cur.scroll(-2,mode="relative")
# data = cur.fetchone()
# print(data)
cur.scroll(1,mode="absolute")
data = cur.fetchone()
print(data)
# 关闭游标和连接
cur.close()
con.close()