MySQL自娱—3.初次使用
SQLyog是图形化mysql管理软件,破解的比较好找。暂时没找到navicat破解版
创建数据库
mysql> CREATE DATABASE `school` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
- utf8是假的编码,只有3位utf8mb4才是真正的utf8编码,推荐使用
- 据说编译安装utf8mb4不识别,会报错;中国人的网络共享水平,我持怀疑态度,有机会测试下
- utf8是解决中文乱码问题的
- 在sqlyog顶部"工具"中,有"历史记录",可以查看执行过程的sql语句,如前边的所有操作
- 从前不爱添加注释,以后要添加注释
简单语句使用
1、登录后修改密码
mysql> show databases; // 查看所有数据库名称
mysql> use mysql; // 进入名为mysql数据库
mysql> select * from user where user="root"\G // 制表符格式查看root用户
mysql> desc user; // 查看表结构 authentication_string是密码字段
mysql> update user set authentication_string=password("密码") where user="root" and Host="localhost";
mysql> show warning; // 有告警可以查看下
mysql> flush privileges; // 刷新权限
2、使用数据库
mysql> create database if not exists smitty; // 如果smitty数据库不存在则创建
mysql> drop database if exists smitty; // 如果数据库存在则删除
示例
--- 创建school数据库;创建学生表;学号int,登录密码varchar(20)... ---
1、建表
mysql> create database if not exists school;
mysql> use school;
mysql> create table if not exists `student` (
-> `id` int(4) not null auto_increment comment '学号',
-> `passwd` varchar(20) not null comment '密码',
-> `name` varchar(30) not null default '匿名' comment '姓名',
-> `sex` char(1) not null default '女' comment '性别',
-> `birthday` datetime default null comment '生日',
-> `address` varchar(100) default null comment '住址',
-> `email` varchar(50) default null comment '邮箱',
-> primary key (`id`)
-> )ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
mysql> show create database school; // 查看创建数据库语句
mysql> show create table student; // 查看student数据表的定义语句
mysql> desc student; // 查看表结构
- 公式
| create table if not exists `表名` (
| `字段名` 列类型 属性 索引 注释,
| `字段名` 列类型 属性 索引 注释,
| 主键
| )engine=引擎 default charset=字符集 注释
2、修改表字段
mysql> alter table student rename as student1; // 修改表名
mysql> alter table student1 add age int(11); // 增加表字段
mysql> alter table student1 modify age varchar(11); // 修改约束
mysql> alter table student1 change age age1 int(1); // 字段重命名
# change用来字段重命名,但是修改字段名的时候改变类型也能成功
# modify不能用来字段重命名,只能修改字段类型和约束
# 所有的创建和删除操作尽量加上判断,避免报错
3、删除表字段
mysql> alter table student1 drop age1; // 删除表字段
mysql> drop table if exists student; // 删除表
4、查看表的列信息
mysql> show full fields from student;
show语句
show databases; // 列出所有的库
show tables; // 列出所有的表
show table status from db_name\G // 列出指定库的表详情
show columns from tb_name\G // 列出表的列详细信息(同下)
show fields from tb_name; // 列出表的列详细信息(表信息)
show full fields from tb_name; // 列出表的更详细列信息(表信息)
show full columns from tb_name; // 列出表的更详细列信息(同上)
show index from tb_name\G // 列出表的索引信息
show status // 列出server的状态信息
show variables // 列出mysql系统参数值
show processlist // 列出当前mysql进程
show privileges; // 显示服务器所支持的不同权限
show grants for user@ip; // 显示一个用户权限
show engines; // 显示安装以后可用的存储引擎和默认引擎;
show warnings;
show errors;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律