初识mysql关于DDL(每日笔记)

初识mysql(每日笔记)

数据库的基本概念

  • 数据库:DataBase 简称DB
  • 什么是数据库?
    • 用于存储和管理数据的仓库.
  • 数据库的特点:
    • 持久化存储数据,是将数据存储在文件中.其实数据库就是一个文件系统
    • 方便存储和管理数据
    • 使用了统一的方式来操作数据库
  • 常见的数据软件:mysql , oracle , db2 , mongoDB , sql server等

MySQL数据库软件

  • 配置mysql数据库环境

    1. 安装mysql: www.mysql.com
    2. 配置mysql的环境变量
  • mysql的登陆和退出

    1. 登陆
      1. 输入指令: mysql -uroot -p密码 (这样输入密码为明文显示)
      2. mysql -uroot -p 回车后再输入密码(这样输入密码为密文显示)
    2. 退出
      1. quit
      2. exit
      3. \q

如何操作MySQL数据库

SQL

  • 什么是SQL?

    • 其实就是一种所有关系型数据库的规则(必须遵守的规则), 每一种数据库操作的方式存在细微不一样的地方,成为"方言"
  • SQL通用语法

    1. sql语句可以单行或多行书写,以分号结尾
    2. 使用空格或者缩进来进行程序的可读性
    3. mysql数据库的sql语句不区分大小写,关键字建议使用大写方式
    4. 3中注释
      • 单行注释:-- 注释内容 或者 # 注释
      • 多行注释:/* 注释内容 */
  • SQL的分类:

    名称意义常用命令
    DDL(数据定义语言)定义和管理数据对象,如数据库,数据表等CREATE、DROP、ALTER 等
    DML(数据操作语言)用于操作数据库对象中所包含的数据INSERT、UPDATE、DELETE 等
    DQL(数据查询语言)用于查询数据库数据SELECT
    DCL(数据控制语言)用来管理数据库的语言,包括管理权限及数据更改GRANT、COMMIT、ROLLBACK 等

DDL : 操作数据库 , 表

操作数据库 : CRUD
  1. C(create):创建

    • 创建数据库(判断不存在 , 才创建):

      create database if not exists 数据库名
      
    • 创建数据库时指定字符集:

      create database 数据库名 character set 字符集名称
      
  2. R(retrieve): 查询

    • 查询所有数据库的名称:

       show databases
      
    • 查询某个数据库的详细信息 (创建语句):

      show create database 数据库名
      
  3. U(update):修改

    • 修改数据库的字符集:

      alter database 数据库名 character set 字符集名称
      
  4. D(delete):删除

    • 删除数据库

      drop database if not exists 数据库名
      
  5. 使用数据库

    • 查询当前正在使用的数据库名称

      select database()
      
    • 使用数据库

      use 数据库名
      
操作表:CRUD
  1. C(create):创建

    • 语法:

      create table 表名称(
          列名1 数据类型1,
          列名2 数据类型2,
          列名3 数据类型3,
          ...
                      );
      --注意最后一列不需要加逗号
      
    • 常用数据类型

      1. 整数类型 : int
        • int(10) int类型不写()默认为11
      2. 小数类型 : double
        • double (5,2)最大为5位数,保留两位小数
      3. 日期:
        • date:日期类型
        • datetime:日期加时间
        • timestamp:时间戳类型 如果不赋值,或者为null,默认使用当前时间
      4. 字符串:varchar
        • varchar(20):指定最大字符长度
      CREATE	TABLE student(
         	stu_id int(10) PRIMARY key comment'学生编号',
         	stu_name varchar(10) not null comment'学生姓名',
         	marjor varchar(50) comment '专业'
        )
      
    • 复制表

      create table 表名称 like 被复制的表名
      
  2. R(retrieve): 查询

    • 查询某个数据库所有表的名称:

       show databases
      
    • 查询表结构

      desc 表名称
      
  3. U(update):修改

    • 修改表名

      alter table 表名 rename to 新表名
      
    • 添加一列

      alter table 表名 add 列名 数据类型 
      
    • 修改列名 类型

      1. modify:修改属性:
      alter table 表名 modify 字段名 字段属性
      
      1. change:既修改属性又可以修改名称:
      alter table 表名 modify 列名 新的列名 字段属性
      
    • 删除列

      alter table 表名 drop 列名
      
  4. D(delete):删除

    • 删除表

      drop database if not exists 表名
      
常用字段
  1. unsigned:无符号的

    create table course(
    	cid int primary key,
        name varchar(20) not null,
        score float(10) unsigned,
        day datetime
    )
    

    此sql中score属性不能存入小与0的数字

  2. primary key: 设置主键

    create table course(
    	cid int primary key,
        name varchar(20) not null,
        score float(10) unsigned,
        day datetime
    )
    
  3. zerofill:0填充的

    create table course(
    	cid int primary key,
        name varchar(20) not null,
        score float(10) unsigned zerofill,
        day datetime
    )
    

    比如向float字段增添数据60,查看显示为:000000000060

  4. auto_increment:自增 一般设置到主键上

    create table course(
    	cid int primary key auto_increment,
        name varchar(20) not null,
        score float(10) unsigned zerofill,
        day datetime
    )
    
  5. default:默认的

    给定默认值

    create table student(
    	name varchar(10) primary key,
        sex varchar(10) not null default "男"
    )
    

    例如可以设定性别默认值为男

  6. comment:注释

    create table student(
    	name varchar(10) primary key comment"学生姓名",
        sex varchar(10) not null default "男"
    )
    
  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值