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 数据库。

上一篇:linux消息队列,共享内存,信号量综合运用
下一篇:树莓派博通BCM2835芯片的IO口驱动代码调试和测试

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年04月01日 04时14分45秒