MySQL

47 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天,点击查看活动详情

1、MySQL交互式窗口命令

mysql -u root -p123456	--连接数据库

update mysql.user set authentication_string=password('123456') where user='root' and Host='localhost';	--修改用户密码
flush privileges;	 --刷新权限

-----------------------------------------
show database;	--查看所有数据库

mysql> use school	--切换数据库:use 数据库名
Database Changed

show tables;	--查看数据库中所有的表
describe student;	--显示数据库中所有表的信息

create database westos;	--创建一个数据库

exit;	--退出

--  单行注释

/*
多行注释
*/

2、数据库可视化操作

2.1、操作数据库

1、创建数据库

CREATE DATABASE [IF NOT EXISTS] westos;

2、删除数据库

DROP DATABASE IF EXISTS westos;

3、使用数据库

USE `school`; 
--tab上面的键,如果你的表名或字段名是一个特殊字符,就需要带``

4、查看数据库

SHOW DATABASES --查看所有的数据库

2.2、数据类型

数值

  • tinyint 十分小的数据 1个字节
  • smallint 较小的数据 2个字节
  • mediuint 中等大小的数据 3个字节
  • int 标准的整数 4个字节
  • bigint 较大的数据 8个字节
  • float 浮点数 4个字节
  • double 浮点数 8个字节(精度问题)
  • decimal 字符串形式的浮点数 金融计算的时候,一般使用decimal

字符串

  • char 字符串固定大小的 0~255
  • varchar 可变字符串 0~65535
  • tinytext 微型文本 2^8-1
  • text 文本串 2^16-1

时间日期
java.util.Date

  • date YYYY-MM-DD日期格式
  • time HH:mm:ss时间格式
  • datetime YYYY-MM-DD HH:mm:ss
  • timestamp时间戳,1970.1.1到现在的毫秒数
  • year年份表示

null

  • 没有值,未知
  • 注意:不要使用NULL进行运算,结果为NULL

2.2、数据库的字段属性(重点)

Unsigned:

  • 无符号的整数
  • 声明了该列不能声明为负数

zerofill:

  • 0填充的
  • 不足的位数,使用0来填充,int(3),5 ···· 005

自增:

  • 通常理解为自增,自动在上一条记录的基础上+1(默认)
  • 通常来设计唯一的主键~index,必须是整数类型
  • 可以自定义式设计主键自增的起始值和步长

非空 NULL not null

  • 假设设置为not null,如果不给它赋值,就会报错!
  • NULL,如果不填写值,默认就是

默认:

  • 设置默认的值
  • sex,默认值为男,如果不指定该列的值,则会有默认的值