MySQL学习(一)

数据库的原理

数据库是什么?

顾名思义,我们可以把他理解成一个存放数据的仓库;仓库,一般是指具有储存设施,对物品(物资)进行集中、整理、保管和分发等工作的场所,数据库是就是与这种相同,只是他是针对数据。

DBMS是什么?

  1. Database Management System:
    数据库管理系统,相当于仓库的管理人员,我们后续针对数据库进行的各种管理操作就是通过该系统来完成的;

  2. 数据库管理系统的分类:
    包含两大类SQL(关系型数据库)和NoSQL(非关系型数据库)

两者的区别:
1、关系型数据库是通过外键来建立表与表之间的联系,表中的每行代表着一个对象;
2、非关系数据库则没有行和列的概念,他的关系是键值对,他以对象的形式存储在数据库中,而对象之间的关系通过对象自身的属性来决定;
3、我们查询数据,对关系型数据库,输出结果是一个对象;对非关系型数据库,输出结果是一个数组。

MySQL基本原理

数据类型

数值

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

字符串

char字符串固定大小 0-255
varchar可变字符串 0-65535(常用
tinytext微型文本 2^8-1
text文本串 2^16-1 (保存大文本)

时间类型

dateYYYY-MM-DD,日期
timeHH:mm:ss 时间格式
datetimeYYYY-MM-DD HH:mm:ss 最常用的时间格式

null
表示没有值,注意,不要使用null进行运算,结果为null

字段类型

unsigened

无符号的整数;声明该列不能声明负数

zerofill

0填充的:比如10的长度 1 – 0000000001 不足位数用0填充。

自增:

1、通常理解为自增,自动在上一条记录的基础上+1 ;
2、 通常用来设计唯一的主键 index,必须是整数。

非空 NULL not Null:

假设设置为 not null,如何不给他赋值,就会报错 NULL 如果不填写,默认为NULL

默认:

设置默认的值!

操作数据库

创建数据库:CREATE DATABASE IF NOT EXISTS wrok;
删除数据库:DROP DATABASE IF EXISTS wrok
使用数据库:USE 'wrok'
查看所有数据库:SHOW DATABASES

创建数据库表
1、格式:

CREATE TABLE [IF NOT EXISTS] `表名`(
`字段名` 列类型[属性][索引][注释],
`字段名` 列类型[属性][索引][注释],
...
`字段名` 列类型[属性][索引][注释]
)[表类型][表的字符集设置][注释]

2、例如:

CREATE DATABASE school
CREATE TABLE IF NOT EXISTS `work` (
`id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '工号',
`name` VARCHAR(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
`pwd` VARCHAR(20) NOT NULL DEFAULT '123456' COMMENT '密码',
`sex` VARCHAR(2) NOT NULL DEFAULT '男' COMMENT '性别',
`birthday` DATETIME DEFAULT NULL COMMENT '出生日期',
`address` VARCHAR(100) DEFAULT NULL COMMENT '家庭住址',
`email` VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY (`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8

删除和修改数据库表
1、修改

-- 修改表名 ALTER TABLE 旧表面 AS 新表名
ALTER TABLE student RENAME  AS student1
-- 增加表的字段 ALTER TABLE 表名 ADD 字段名 列属性
ALTER TABLE student1 ADD age INT(11)
-- 修改表的字段(重命名,修改约束)
ALTER TABLE student1 MODIFY age VARCHAR(11)  -- 修改约束
ALTER TABLE student1 CHANGE age age1 INT(1)  -- 字段重命名

2、删除

-- 删除表
DROP TABLE IF EXISTS student1 

所有的创建和删除操作尽量加上判断,以免报错
注意点:
`` 字段名,使用这个包裹
注释 – /**/
sql 关键字大小写不敏感,建议写小写
所有的符号全部用英文


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值