DDL数据定义语言

MySQL

一、MVC和三层架构

  1. MVC和三层架构.png
  2. 数据库的概念


    数据库的概念.png
  3. 验证MySQL是否安装配置成功:mysql -u root -p
  4. MySQL在windows系统下不区分大小写,其他系统严格区分大小写,应养成区分大小写的习惯。
  5. GRANT ALL PRIVILEGES ON 库名.表名 TO '用户名'@'IP地址' IDENTIFIED BY '密码' WITH GRANT POTION;
    FLUSH PRIVILEGES;(用户数据和权限有修改后,在“不重启MySQL服务”的情况下直接生效)
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'lxh' WITH GRANT OPTION;(所有的地址都可以使用root用户,密码为lxh远程访问所有的数据库)
    GRANT ALL PRIVILEGES ON testdb.* TO 'lxh'@'localhost' IDENTIFIED BY 'lxh' WITH GRANT OPTION;(本地用户可以使用lxh用户,密码为lxh远程访问数据库testdb的所有表)

二、DDL:数据定义语句(Data Definition Language)

  • 对应关系
  1. java类和表结构对应。
  2. java对象和表中的一条记录对应。
  • 作用:用于描述数据库中要存储的现实世界实体的语言,即创建数据库和表的结构。
  • 常用关键字:CREATE ALTER DROP TRUNCATE

库操作

  • 显示所有的数据库
    SHOW DATABASES;
  • 创建一个名称为mydb1的数据库。
    CREATE DATABASE mydb1;
  • 查看数据库的创建细节,可以看到使用的字符集。
    SHOW CREATE DATABASE mydb1;
  • 创建一个使用gbk字符集的mydb2数据库
    CREATE DATABASE mydb2 CHARACTER SET gbk;
  • 创建一个使用gbk字符集,并自带校对规则的mydb3数据库。
    CREATE DATABASE mydb3 CHARACTER SET gbk COLLATE gbk_chinese_ci;
  • 删除前面创建的mydb3数据库。
    DROP DATABASE IF EXISTS mydb3;
  • 查看服务器中的数据库,并把mydb2的字符集修改为utf8.
    ALTER DATABASE mydb2 CHARACTER SET UTF8;

表结构操作

  • 显示当前的数据库
    SELECT DATABASE();
  • 选择数据库
    USE mydb1;
  • 创建一个员工表
  CREATE TABLE employee(
        id int ,
        name varchar(100),
        gender varchar(10),
        birthday date,
        entry_date date,
        job varchar(100),
        salary float(8,2),
        resume text
    ); 
  • 查看库中的所有表格
    SHOW TABLES;
  • 查看表的结构
    DESC employee;
  • 查看表的创建细节
    SHOW CREATE TABLE employee;
  • 在上面员工表的基础上增加一个image列
    ALTER TABLE employee ADD image blob;
  • 修改job列,使其长度为60(修改表的列类型MODIFY)
    ALTER TABLE employee MODIFY job varchar (60);
  • 删除image列
    ALTER TABLE employee DROP image;
  • 表名改为user
    RENAME TABLE employee TO user;
  • 修改表的字符集为utf8
    ALTER TABLE user CHARACTER SET utf8;
  • 列名name修改为username(修改表的列名CHANGE)
    ALTER TABLE user CHANGE name username varchar(100);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。