美文网首页
数据库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