🐶连接数据库:
mysql -h 主机名 -u 用户名 -p密码 库名
mysql --采用匿名账号和密码登陆本机服务
mysql -h localhost -u root -proot --采用root账号和root密码登陆本机服务
mysql -u root -p --推荐方式默认登陆本机
mysql -u root -p mydb --直接进入mydb数据库的方式登陆
🐰SQL语句中的快捷键:
\G 格式化输出(文本式,竖立显示)
\s 查看服务器端信息
\c 结束命令输入操作
\q 退出当前sql命令行模式
\h 查看帮助
🐮数据库操作:(注意大小写)
show databases; --查看当前用户下的所有数据库
create database if not exists 数据库名; --创建数据库
show create database 数据库名\G ; --查看建数据库语句
use 数据库名; --选择进入指定的数据库
select database(); --查看当前所在的数据库位置
drop database if exists 数据库名; --删除一个数据库
🐵数据表操作:
show tables; --查看当前库下的所有表格
show create table 表名\G ; --查看表的建表语句
create table 表名( 字段说明列表 ... ); --创建表格(具体详见建表语句)
show columns from 表名; --查看表结构
desc 表名; --查看表结构
drop table if not exists 表名; -- 尝试删除mytab表格
select * from 表名; --查看全量数据
select 要查询的列名 from 表名; --查看表里的部分内容
🐨若需获取更全面详细信息, SHOW FULL COLUMNS FROM 更合适;若追求简洁快速查看基本表结构, DESC 更方便 。
🐻数据完整性约束的类型(约束条件包括是否允许空值、默认值、自增属性、主键、唯一约束等)
域完整性:字段的取值必须满足特定的数据类型约束。
实体完整性:每条记录必须是唯一的,主键不能重复或为空。
参照完整性:外键字段的值必须与主键字段的值一致。
用户定义完整性:根据应用需求自定义的约束条件。
🦁在 MySQL 中添加外键的语法格式说明
🐦创建表时添加外键在创建表时直接定义外键约束,语法格式如下:
CREATE TABLE 子表名 (
列名1 数据类型,
列名2 数据类型,
...
外键列名 数据类型,
CONSTRAINT 外键约束名
FOREIGN KEY (外键列名)
REFERENCES 主表名(主键列名)
[ON DELETE {CASCADE | SET NULL | RESTRICT | NO ACTION | SET DEFAULT}] [ON UPDATE {CASCADE | SET NULL | RESTRICT | NO ACTION | SET DEFAULT}]
);
🐭语法参数解释
子表名:需要创建的表名,该表中的外键列会关联到主表的主键。
外键列名:子表中用于关联主表主键的列。
外键约束名:为外键约束设置的名称,方便后续管理和识别。
主表名:被关联的表名,主表中需要有主键列。
主键列名:主表中的主键列,外键列会引用该主键列的值。
ON DELETE 和 ON UPDATE:这两个子句是可选的,用于定义当主表中的记录被删除或更新时,子表中相关记录的处理方式:
CASCADE:主表记录删除或更新时,子表中相关记录也会自动删除或更新。
SET NULL:主表记录删除或更新时,子表中相关记录的外键列会被设置为 NULL,不过前提是外键列允许为 NULL。