
MySQL复习基础语句
发布日期:2021-05-07 07:21:42
浏览次数:13
分类:精选文章
本文共 3116 字,大约阅读时间需要 10 分钟。
MySQL 语句指南
MySQL 语句规范
- 关键字和函数名:全部使用大写。
- 数据库名、表名、字段名:全部使用小写。
- SQL 语句必须以分号结尾。
MySQL 参数说明
参数 | 描述 |
---|---|
-D, --database=name | 打开指定数据库。 |
--delimiter=name | 指定分隔符,默认为分号。 |
-h, --host=name | 服务器名称(IP 地址或主机名)。 |
-p, --password[=name] | 密码,选项可选。 |
-P, --port=# | 数据库服务器端口号。 |
--prompt=name | 设置提示符。 |
-u, --user=name | 用户名。 |
-V, --version | 输出 MySQL 版本信息并退出。 |
--execute=command | 执行指定的 SQL 语句或多个语句。 |
MySQL 登录与退出
登录 MySQL
# 不指定服务器,使用默认 localhostmysql -u root -p# 指定服务器和密码mysql -h 192.168.1.1 -u root -proot# 忽略服务器和密码,默认 localhost 和密码验证mysql -u root -p# 完整语句,默认端口 3306,默认 localhostmysql -u [用户名] -p[密码] -P3306 -h localhost
退出 MySQL
mysql> exit;mysql> quit;mysql> \q;
启动/关闭 MySQL 服务
# 启动 MySQL 服务net start mysql# 关闭 MySQL 服务net stop mysql
查看当前用户加密方式
USE mysql;SELECT user, plugin FROM user WHERE user='root';
修改 MySQL 提示符
# 未连接时使用参数指定mysql -uroot -p[密码] --prompt="..."# 连接后使用 prompt 修改prompt "\u@\h \d>"
将用户加密方式改为 mysql_native_password
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YourPassword';FLUSH PRIVILEGES;
数据库操作
创建数据库
CREATE DATABASE [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name;
示例:
CREATE DATABASE IF NOT EXISTS test_db;
查看数据库列表
SHOW DATABASES [LIKE 'pattern'];
删除数据库
DROP DATABASE [IF EXISTS] db_name;
示例:
DROP DATABASE IF EXISTS test_db;
修改数据库字符集
CREATE DATABASE test_db DEFAULT CHARACTER SET gb2312 DEFAULT COLLATE gb2312_chinese_ci;
使用数据库
USE test_db;
查看当前数据库
SHOW DATABASES;
数据表操作
创建数据表
CREATE TABLE [IF NOT EXISTS] table_name ( column_name data_type [约束] ...) ENGINE=InnoDB DEFAULT CHARSET=utf8;
示例:
CREATE TABLE IF NOT EXISTS user ( user_id INT UNSIGNED AUTO_INCREMENT, user_title VARCHAR(100) NOT NULL, user_author VARCHAR(40) NOT NULL, submission_date DATE, PRIMARY KEY (user_id)) ENGINE=InnoDB DEFAULT CHARSET=utf8;
查看数据表列表
SHOW TABLES [FROM db_name] [LIKE 'pattern'];
查看数据表结构
SHOW COLUMNS FROM table_name;
查看数据表创建信息
SHOW CREATE TABLE table_name;
修改数据表
ALTER TABLE table_name ADD COLUMN new_column data_type;
删除数据表
DROP TABLE table_name;
查询操作
查询数据
SELECT column_name, column_name FROM table_name[WHERE 条件][LIMIT N][OFFSET M];
修改数据
UPDATE table_name SET column_name = value WHERE 条件;
删除数据
DELETE FROM table_name WHERE 条件;
查询多个表
SELECT * FROM table1, table2 WHERE 条件;
分页查询
SELECT * FROM table_nameLIMIT 10 OFFSET 5;
索引与优化
查看索引
SHOW INDEXES FROM table_name;
创建索引
CREATE INDEX index_name ON table_name (column_name);
日期与时间操作
查看当前日期
SELECT CURRENT_DATE();
查看当前时间
SELECT CURRENT_TIME();
查看当前时间戳
SELECT CURRENT_TIMESTAMP();
错误信息
查看错误日志
SHOW ERRORS;
其他操作
查看服务器版本
SELECT VERSION();
查看当前用户
SELECT USER();
查看当前日期
SELECT NOW();
查看当前时间
SELECT CURRENT_TIME();
注意事项
- 数据库命名:数据库名称不区分大小写,建议使用有意义的名称。
- 字符集与校对规则:建议使用 UTF-8 字符集,并根据需求选择合适的校对规则。
- 备份数据库:在删除数据库前,建议先备份数据以防万一。
开发环境配置
MySQL 安装
# 安装 MySQLsudo apt-get install mysql-server# 启动 MySQL 服务sudo systemctl start mysql# 关闭 MySQL 服务sudo systemctl stop mysql# 查看 MySQL 服务状态sudo systemctl status mysql
常用数据库示例
Sakila 数据库
Sakila 是 MySQL 提供的开源样例数据库,适合学习和开发。
-- 创建 Sakila 数据库CREATE DATABASE sakila DEFAULT CHARACTER SET utf8;-- 使用 Sakila 数据库USE sakila;-- 查看 Sakila 数据库表结构SHOW TABLES;-- 查看 Sakila 数据库表信息SHOW CREATE TABLEsakila.*;
通过以上操作,您可以方便地管理和使用 MySQL 数据库。
发表评论
最新留言
感谢大佬
[***.8.128.20]2025年04月01日 04时14分45秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
如何将自己写的代码编进系统
2019-03-05
数据结构有哪些
2019-03-05
OSI 7 层网络模型
2019-03-05
Spring Bean 生命周期
2019-03-05
JDK 内置线程池
2019-03-05
linux 常用命令
2019-03-05
JVM 参数默认值查询
2019-03-05
异常的继承结构
2019-03-05
SVN 和 Git 区别
2019-03-05
JDK 内置的多线程协作工具类的使用场景
2019-03-05
redis 单线程为什么快
2019-03-05
redis 过期数据删除策略
2019-03-05
Java 源代码到运行的过程
2019-03-05
Java 中哪些对象可以获取类对象
2019-03-05
linux 的 cp 命令如何复制不提示覆盖
2019-03-05
缓存穿透 / 缓存击穿 / 缓存雪崩 / 缓存一致性
2019-03-05
linux 的 pwd 命令
2019-03-05
linux 的 sleep 命令
2019-03-05
js 的 let var const 区别
2019-03-05
无线掌上B超USONIX-R6线阵B模图像初步
2019-03-05