美文网首页
数据库MySql

数据库MySql

作者: _str_ | 来源:发表于2019-08-11 15:33 被阅读0次

    修改密码
    alter user root@localhost identified by ' 密码' 密码是大小写跟特殊字符

    sof -i:3306
    监听3306端口
    lsof /var/log/mysqld.log
    查看这个文件是那个进程在用

    数据库中得命令一定要加上分号

    建库

    CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;
    

    使用库

    use 数据库名字
    

    查看当前库

    select database();
    status;
    

    查看当前库得默认字符集

    show create database 数据库名\G
    

    删除数据库

    drop database 数据库名称
    

    关于日期和时间类型的字段

    字段类型:DATE
    表现形式:YYYY-MM-DD
    取值范围:1000-01-01/9999-12-31
    创建方法:字段名 DATA
    添加数据:values("20191010") 查询到的结果:2019-10-10```

    DATA  
                   YYYY-MM-DD(1000-01-01/9999-12-31)
    TIEM 
                    HH:MM:SS('-838:59:59'/'838:59:59')
    YEAR
                      YYYY(1901/2155)
    DATETIME
                      YYYY-MM-DD HH:MM:SS(1000-01-01 00:00:00/9999-12-31 23:59:59    Y)
    TIMESTAMP
                      YYYYMMDD HHMMSS(1970-01-01 00:00:00/2037 年某时)
    

    表操作

    CREATE     创建表,在数据库创建对象
    ALTER      修改表,修改数据库结构(扩展自修)
    DROP       删除表,从数据库中删除对象
    TRUNCATE   删除表中所有行(无法回退)
    COMMENT    注释(为数据字典添加备注)
    RENAME     重命名表(扩展自修)
    
    create table 表名[ IF NOT EXISTS](
        列名  类型  [NOT NULL | NULL] [DEFAULT default_value] [AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY] [COMMENT 'string'],
        列名  类型
    )ENGINE=InnoDB DEFAULT CHARSET=utf8;
    

    存储引擎

    MySql的存储引擎:InnoDB

    数据库中的一些类型主要用的有
    int类型 大多是id、年龄等数字所用的
    char类型 这个是有长度限制 没有varchar 能放的字符长度长 主要是非数字字段名所用的字符类型
    数据库中还有一些其他的主要名称
    auto_increment 自增长
    null 为空
    primary key 主键
    foreign key 外键

    数据库中的关系

    一个数据库中可以有一张或多张表,大多时候是需要建立很多表来完成业务需求的,一个表中只能有一个主键,但可以有多个外键
    主键的值是能唯一的标识表中的每一行 保证了实体的完整行
    外键是另一张表中的主键 但在这张表里是外键不属于主键

    创建表

    create table phy_server(
      id int auto_increment primary key,     #主键 自增长
      host_name  varchar(36)  unique key not null,   #不可重复
      server_model  varchar(96) not null,
      server_sn varchar(128) not null,
      server_vendor varchar(96) not null  comment "厂商",
      board_sn varchar(96),
      bios_version varchar(96) not null,
      os_version varchar(96) not null,
      kernel_version varchar(96) not null,
      cpu_phy_num int,
      cpu_core_of_phy int,
      cpu_model  varchar(32),
      add_date datetime,
      change_date  datetime default now()    #取当前时间
    );
    

    数据库中的基本命令

    查看当前库中所有表
    mysql> show tables;
    +--------------------+
    | Tables_in_shark_db |
    +--------------------+
    | student            |
    +--------------------+
    1 row in set (0.00 sec)      
    
    查看表结构
    /*查看当前库中指定表的表结构*/
    mysql> desc 表名;
    
    /*查看指定库中指定表的表结构*/
    mysql> desc 库名.表名;
    
    清空表的内容,表本身还在
    delete from 表名    /*自增列的值继续递增,可以加 where 子句*/
    truncate table 表名  /*自增列的值重新从 1 开始*/
    
    /*删除表中的所有数据,自增列的值继续递增*/
    delete from tb1;
    
    /*删除表中的某些数据,被删除的数据的自增列的值将不会再次出现,自增列的值继续递增*/
    delete  from  tb1   where id < 20;
    
    删除表
    drop table  表名     /*整个表将不复存在*/
    

    相关文章

      网友评论

          本文标题:数据库MySql

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