表头:每一列的名字(类型,个数。。。。。)
列:具有相同数据类型数据的集合;(表头规定每列字数,超出规定报错)
行:每一行用来描述某个人/物的具体信息;(一条完整的数据字段)
键:用来识别某个特定的人或者是物的属性或方法,键的值在当前列中具有唯一性;
值:行的具体信息,每个值必须与该列的数据类型相同;
数据类型:
sql将数据类型分为三类;
1、数值类型{
--整数型:{
--迷你整型:tinyint ,使用一个字节存储,表示的状态最多为256
--小整型:smalint 使用两个字节 表示的状态最多为65536
--中整型: mediumint 使用三个字节
--标准整型: int 使用四个字节*
--大整型: bigint 使用八个字节
}
--小数型
[
---浮点型 小数点浮动,精度有限 会丢失精度*
[
---float (x,y)单精度 占4字节 精度范围 7位左右
x表示总长度 y表示小数部分长度 整数部分的长度x-y
---double 双精度 占8字节 15位左右
]
---定点型 小数点固定 精度固定 不会丢失精度
]
}
2、字符串: 有var前缀的,表示是实际存储空间是变长的
char varchar text blod enum set
char (4)定长的字符串 括号1中的数据控制总长度 4*3=12
varchar(4)变长的字符串 4*3+1=13
3、日期/时间
Datetime : YYYY-mm-dd- HH:ii:ss
Date : YYYY-mm-dd-
Time : HH:ii:ss
Timestarp 时间戳 从1970年开始的YYYY-mm-dd- HH:ii:ss
Year 两种形式
主键:primary key 一张表中只有一个主键,不能重复 主键默认不能为空 ;
无资源,没有数据类型 查询数据库 show databases;
填写数据库,OK后
创建数据库 create database myhome;(myhome 自定义数据库名称)
选中使用数据库 use + 自定义数据名称
删除数据库
drop database myhome;
查看数据表:
show tables;
创建数据表(同时创建表头):
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(30) DEFAULT NULL,
`sex` varchar(2) DEFAULT NULL,
`birthday` date DEFAULT NULL,
PRIMARY KEY(`id`)
)ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
create table myself(
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(30) DEFAULT NULL,
`sex` varchar(2) DEFAULT NULL,
`item` varchar(8) DEFAULT NULL,
`subject` varchar(6) DEFAULT NULL,
`time` date DEFAULT NULL,
`birth` date DEFAULT NULL,
PRIMARY KEY(`id`)
)ENGINE= InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
create table myout(
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(30) DEFAULT NULL,
`sex` varchar(2) DEFAULT NULL,
`item` varchar(8) DEFAULT NULL,
PRIMARY KEY(`id`)
)ENGINE= InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
`id` int(11) NOT NULL AUTO_INCREMENT,
`姓名` varchar(30) DEFAULT NULL,
`年龄` varchar(2) DEFAULT NULL,
`性别` varchar(8) DEFAULT NULL,
`学号` varchar(8) DEFAULT NULL,
`专业` varchar(12) DEFAULT NULL,
`班级` varchar(8) DEFAULT NULL,
`成绩`varchar(6) DEFAULT NULL,
)ENGINE= InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
insert into my_codr values
(2,'王翔','10','男','051238','计算机科学与技术','1501','60'),
(3,'徐浩','22','男','051239','古汉语','1501','33'),
(4,'刘艳芳','19','女','051240','古汉语','1502','99'),
(5,'韩梅梅','23','女','051241','幼师','1503','77'),
(6,'李小明','20','男','051242','幼师','1503','66'),
(7,'王小军','19','男','051243','计算机科学与技术','1503','55'),
(8,'张三','22','男','051244','幼师','1502','80'),
(9,'李四','21','男','051245','工程造价','1502','90'),
(10,'张轩','24','女','051246','工程造价','1502','85');

OK之后的
表格详情 查看表结构
删除数据表 drop table my_info;
修改表名 rename table my_info to new_info;
数据操作:
添加数据
单行:
方式一:insert into my_info values(0,'李军','男','1996-12-04');
方式二: insert into my_info(id,name,sex,birthbody) values (0,'李军','男','1996-12-04');
多行:
insert into my_info values (0,'李军','男','1996-12-04'),
(1,'李小慧','女','1992-1-08'),
(2,'张菊','女','1987-04-08');
示例:
insert into myout values (23,'','男','35'), (24,'李小慧','女','78'), (25,'张菊','女','89');
insert into myself values (1 ,'张军' , '男' , '软件运维' , '89' ,'2014-10-02' , '1997-02-05' ),
(2,'刘萍','女','会计','90','2014-10-02','1997-06-05'),
(3,'张军','男','软件运维','89','2014-10-02','1997-02-05'),
(4,'大卫','男','机电','102','2014-10-02','1994-11-03'),
(5,'刘金','女','会计','69','2014-10-02','1996-08-22');


查询数据
查询所有数据:select *from my_info;
选取行列
单列 select + 区块名称 from +表单名称
多列 select+区块,区块,区块 from +表单名称
修改数据:
update myself set name='刘惠' where id=5;
update myself set id=5 where name='刘惠' ;(提示OK但是并没有修改成功)
修改多个字段
update myself set sex='女' ,subject='111' where id = 5;
删除数据
delete from myself where id =2;
delete from myself where id<5;
delete from myself ;删除所有
查询id或者关键字索取数据
更具id IN查询 存在区间匹配
not in() 不存在匹配
between a and b 存在区间中间
空字符模糊查询:
查询数据库端口号:show global variables like 'port';