美文网首页数据库学习
2023-11-12第10章_创建和管理表

2023-11-12第10章_创建和管理表

作者: 大也 | 来源:发表于2023-11-19 08:57 被阅读0次

    -- ----------------------十. 创建数据库
    -- 修改表。alter 改变 column 列 truncate 截断
    -- !!开始
    -- SHOW DATABASES -- 显示所有数据库
    -- CREATE DATABASE IF NOT EXISTS MyFamily CHARACTER SET 'utf8mb3' -- 标准
    -- SHOW DATABASES -- 显示所有数据库 检查创建了没有
    -- SHOW CREATE DATABASE MyFamily -- 查看数据库的创建信息
    -- USE MyFamily; -- 切换数据库
    -- SELECT DATABASE() FROM DUAL; -- 查看当前使用中的数据库
    -- SHOW TABLES FROM MyFamily; -- 查看指定库下所有的表
    -- 创建表 !! NOT
    -- CREATE TABLE IF NOT EXISTS RelativePerson(
    -- int类型
    -- relative_age INT,
    -- 最多保存20个中英文字符
    --relative_name VARCHAR(20),
    -- 总位数不超过15位
    --relative_money DOUBLE,
    -- 日期类型
    --relative_birthday DATE
    -- 主键 ????
    --PRIMARY KEY (deptno)
    -- AUTO_INCREMENT 自增 ???
    --relative_num INT(0) AUTO_INCREMENT,
    -- )
    -- SHOW TABLES -- 显示 当前使用的数据库的所有表
    -- DESC RelativePerson; -- 查看表信息 表字符集没设置默认为 数据库字符集
    -- SHOW CREATE TABLE RelativePerson; -- 查看表的创建信息 ??? 有问题 语句没问题 终端可以使用
    -- DESC RelativePerson; -- 查看表信息 表字符集没设置默认为 数据库字符集
    -- DROP TABLE IF EXISTS RelativePerson ;
    -- DROP DATABASE IF EXISTS MyFamily;

    -- -- 第二种创建方式. 同时导入数据. 且 SELECT 可以取别名 别名可以作为属性/列名直接查找了 等功能
    -- CREATE TABLE RelativePersonTwo
    -- AS SELECT employee_id,last_name,salary*3 money FROM atguigudb.employees;
    -- SHOW TABLES -- 显示 当前使用的数据库的所有表
    -- DESC RelativePersonTwo; -- 查看表信息 表字符集没设置默认为 数据库字符集
    -- !!到此

    -- #1. 复制employees 表 employees_copy 包括表数据
    -- CREATE TABLE employees_copy
    -- AS SELECT * FROM employees
    -- #2 复制employees 表 employees_empty 不包含数据
    -- CREATE TABLE IF NOT EXISTS employees_empty
    -- AS SELECT * FROM employees WHERE 1=2
    --
    -- ALTER TABLE 表名 ADD 【COLUMN】 字段名 字段类型 【FIRST|AFTER 字段名】; -- 添加字段
    -- ALTER TABLE 表名 MODIFY 【COLUMN】 字段名1 字段类型 【DEFAULT 默认值】【FIRST|AFTER 字段名 2】; -- 修改字段
    -- ALTER TABLE dept02 MODIFY test_change DECIMAL(8,2) DEFAULT 100 AFTER manager_id;
    -- ALTER TABLE 表名 CHANGE
    【column】 列名 新列名 新数据类型; -- 重命名列
    -- ALTER TABLE 表名 DROP 【COLUMN】-- 字段名 删除列
    -- TRUNCATE TABLE detail_dept; -- 基本不用
    -- TRUNCATE语句不能回滚,而使用 DELETE 语句删除数据,可以回滚
    -- 【 强制 】表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出 现数字。
    -- 数据库字段名的修改代价很大,因为无法进行预发布,所以字段名称需要慎重考虑。
    -- 【 强制 】禁用保留字,如 desc、range、match、delayed 等,请参考 MySQL 官方保留字。
    -- 【 强制 】表必备三字段:id, gmt_create, gmt_modified。
    -- 【 推荐 】表的命名最好是遵循 “业务名称_表的作用”。
    -- 【 推荐 】库名与应用名称尽量一致。

    -- MySQL 5.7
    -- TABLE book1,book2; book1存在 book2不存在 执行报错 book1 会被删除
    -- MySQL 8.0
    -- TABLE book1,book2; book1存在 book2不存在 执行报错 book1 不会被删除

    相关文章

      网友评论

        本文标题:2023-11-12第10章_创建和管理表

        本文链接:https://www.haomeiwen.com/subject/dryuwdtx.html