MySQL数据库1

概念

DB 数据库(database):存储数据的仓库,保存了一系列有组织的数据

DBMS 数据库管理系统(database management system):数据库是通过DBMS创建和操作的容器

SQL 结构化查询语言(structure query language):专门用来与数据库通信的语言

数据库数据存储的特点

1、将数据放到表中,表再放到库中
2、一个数据库中可以有多个表,每个表都有一个的名字,用来标识自己。表名具有唯一性。
3、表具有一些特性,这些特性定义了数据在表中如何存储,类似java中“类”的设计。
4、表由列组成,我们也称为字段。所有表都是由一个或多个列组成的,每一列类似java 中的”属性”
5、表中的数据是按行存储的,每一行类似于java中的“对象”。

服务的启动和停止

在计算机管理-服务中手动控制

管理员身份打开Dos窗口,启动:net start mysql80 停止:net stop mysql80

服务端的登录和退出

1.自带的command line client登录 ctrl+c/exit退出

2.管理员身份打开命令行客户端MySQL [-h主机名] [-p端口号]-uroot -p登录 ctrl+c/exit退出

常见命令

注:按上下键看历史命令

show databases;//显示所有数据库

use 库名;//进入指定数据库

show tables;//显示当前库的所有表

show tables from 库名;//直接显示该库名的表

select database();//查看现在在哪个库

create table 表名(//建表

        id int,     //列名 列类型

        name varchar(20)

);

desc 表名;//查看表的结构

select * from 表名;//查看表的数据

insert into 表名 (id name) values(1,'john');//在表中插入数据

update 表名 set name='lili' where id=1;//修改数据

delete from 表名 where id=1;//删除数据

select version(); 或 exit   mysql --version//查看mysql版本

quit 或exit 或 \q;退出

alter user 'root'@'localhost' identified by 'root' password expire never;设置密码永不过期

设置加密规则为mysql_native_passowrd

alter user 'root'@'localhost' identified with mysql_native_passowrd by 'root';

卸载数据库

1.停止MySQL服务

2.在控制面板删除MySQL软件

3.删除软件文件夹:C:\Program Files\MySQL

4.删除数据文件夹:C:\ProgramData\MySQL

5.删除path环境变量中关于MySQL安装路径的配置

语法规范

不区分大小写,建议关键字大写,表名,列名小写

每条命令分号结尾

根据想要缩进换行

注释:单行#或--   多行 /* */

图形化用户界面客户端

以navicate premium为例,新建连接

新建查询处可以输入命令,运行

创建数据库表

查询-新建查询

数据定义语言(DDL)针对数据库对象(数据库、表、索引、视图、触发器、存储过程、函数)进行创建、修改、删除操作

1.CREATE:创建数据库对象

2.ALTER:修改数据库对象

3.DROP:删除数据库对象

desc t_student;//查看表的结构,展示表的字段详细结构
select * from t_student;//查看表中(全部)数据
show create table t_student;//查看建表语句

数据控制语言(Data Control Language,DCL): DCL用来授予或回收访问数据库的权限,其主要包括:
1) GRANT:授予用户某种权限
2) REVOKE:回收授予的某种权限
事务控制语言(Transaction Control Language,TCL): TCL用于数据库的事务管理。其主要包括:
1) START TRANSACTION:开启事务
2)COMMIT:提交事务
3) ROLLBACK:回滚事务
0238

数据库表列类型

1.整数类型

整数类型大小范围(有负号)范围(无符号)作用
TINYINT1字节(-128,127)(0,255)小整数值
SMALLINT2字节(-32768,32767)(0,65535)大整数值
MEDIUMINT3字节(-8388608,8388607)(0,16777215)大整数值
INT(INTEGER)4字节(-2147483648,2147483647)(0,4294967295)大整数值
BIGINT8字节(-9223372036854775808,9223372036854775807)(0,18446744073709551615)极大整数

MySQL支持选择在该类型关键字后面的括号内指定整数值的显示宽度(如,INT(4))。显示宽度不限制可以在列内保存的值的范围,也不限制超过列的指定宽度的值的显示,若超过,会自动扩充宽度。

主键:能唯一定位到一条记录的选项,(例,学生表里的学号)

主键自增:不适用序列,通过auto_increment,要求是整数类型,如果写了auto_increment,必须设置该项为主键

2.浮点数类型

浮点数类型大小

作用

FLOAT4字节单精度浮点数值
DOUBLE8字节双精度浮点数值

浮点数类型宽度不会自动扩充

score double(4,1)
//小数部分1位,总宽度4位

3.字符串类型

字符串类型大小描述
CHAR(M)0~255字符允许长度0~M个字符的定长字符串
CARCHAR(M)0~65535字符允许长度0~M个字符的变长字符串
BINARY(M)0~255字节允许长度0~M个字符的定长二进制字符串
VARBINARY(M)0~65535字节允许长度0~M个字符的变长二进制字符串
TINYBLOB0~255字节二进制形式的短文本数据,长度不超过255个字符
TINYEXT0~255字节短文本数据
BLOBbinary large object二进制形式长文本数据
TEXT长文本数据
MEDIUMBLOB0~16777215字节二进制形式的中等长度文本数据
MEDIUMTEXT0~16777215字节中等长度文本数据
LOGNGBLOB0~4294967295字节二进制形式的极大文本数据
LOGNTEXT0~4294967295字节极大文本数据

CHAR和VARCHAR类型相似,均用于存于较短的字符串,主要的不同之处在于存储方式。CHAR类型长度固定,VARCHAR类型的长度可变。因为VARCHAR类型能够根据字符串的实际长度来动态改变所占字节的大小,所以在不能明确该字段具体需要多少字符时推荐使用VARCHAR类型,这样可以大大地节约磁盘空间、提高存储效率。
CHAR和VARCHAR表示的是字符的个数,而不是字节的个数
4.时间和日期类型

类型格式取值范围0值
TIME'HH:MM:SS'

('-838:59:59','838:59:59')

'00:00:00'
DATE'YYY-MM-DD'('1000-01-01','9999-12-31')'0000-00-00'
YEARYYYY(1901,2155),00000000
DATETIME'YYY-MM-DD HH:MM:SS'('1000-01-01 00:00:00','9999-12-31 23:59:59')'0000-00-00 00:00:00'
TIMESTAMP时间戳‘YYY-MM-DD HH:MM:SS'('1970-01-01 00:00:01'UTC,'2038-01-19 03:14:07'UTC)'0000-00-00 00:00:00'

TIMESTEMP类型的数据指定方式与DATETIME基本相同,两者的不同之处在于以下几点:

(1)数据的取值范围不同,TIMESTEMP类型的取值范围更小。

(2)如果我们对TIMESTAMP类型的字段没有明确赋值,或是被赋与了NULL值,MySQL会自动将该字段赋值为系统当前的日期与时间。

(3) TIMESTEMP类型还可以使用CURRENT_TIMESTAMP来获取系统当前时间。

(4)TIMESTEMP类型有一个很大的特点,那就是时间是根据时区来显示的。
 

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值