关于MYSQL 你需要知道的数据类型和操作数据表
数据类型和操作数据表
1.1 MySQL类型之整型
1.2 MySQL数据类型之浮点型
1.3 日期时间型
DATE 1支持时间:1000年1月1日~9999年12月31日
DATETIME 3 支持时间:1000年1月1日0时0秒~9999年12月31日23时59分59秒
TIMESTAMP 3 支持时间:1970年1月1日~2037年12月31日
TIME 8 支持时间:-8385959~8385959
YEAR 4 支持时间:1970-2069
1.4 字符型
CHAR:定长,不足则后面补空格
VARCHAR:不定长(可变的: variable)
L+1或L+2里多出来的字节是用来保存数据值的长度的。在对长度可变的数据进行处理时,MySQL要把数据内容和数据长度都保存起来。
1指L的最大存储范围,1个字节即8个1。
对于有符号数最高位为符号位,但是字符型是无符号数,所以2^7+2^6+2^5+2^4+2^3+2^2+2^1+1=255,即第一个L<=255。
四种数据类型:
整型:TINYINT SMALLINT MEDIUMINT BIGINT
浮点型:FLOAT or DOUBLE[(M,D)] M是数字的总位数 D是小数点后的位数
日期时间类型:用的较少,多以时间戳的形式存储
字符型 char(5) 五个字节长的char类型
1.5创建数据表
数据表(或称表)是数据库最重要的组成部分之一,是其他对象的基础.
USE:打开数据表
USE 数据库名称; MySQL登录步骤:
1.输入用户名-u
2.输入密码-p
3.输入端口号-P(大写)
展示所有数据库:
show databases
打开将要执行的数据库
use database 库名
展示一打开的数据库:
设了select database
CREATE TABLE tb1(
username VARCHAR(20),
age TINYINT UNSIGNED,
salary FLOAT(8,2) UNSIGNED
);
//创建了张tb1表,包含用户名,年龄,工资.
1.6 查看数据表
SHOW TABLES [FROM db_name] [LIKE 'pattern' | WHERE expr]
1.7 查看数据表结构
SHOW COLUMNS FROM tbl_name
1.8 MySQL记录的插入与查找
插入记录
INSERT [INTO] tblname [(colname,...)] VALUES(val,..)
insert into tb1 values('jack',18,6000.00);
记录查找
SELECT expr,... FROM tbl_name;
select * from tb1;
1.9 MySQL空值 与 非空
NULL ,字段值可以为空
NOT NULL ,字段值禁止为空
在插入字段的时候添加NULL和NOT NULL
1.10 自动编号
AUTO_INCREMENT
自动编号,且必须与主键组合使用
默认情况下,起始值为1,每次的增量为1;
1.11 初涉主键约束:
PRIMARY KEY
主键约束
每张数据表只能存在一个主键
主键保证记录的唯一性
主键自动为NOT NULL
AUTO_INCREMENT一定要跟PRIMARY KEY一起使用,
但是PRIMAYR KEY 不一定要跟AUTO_INCREMENT一起使用.
12 初涉唯一约束
UNIQUE KEY
唯一约束
唯一约束可以保证记录的唯一性
唯一约束的字段可以为空值(NULL)
每张数据表可以存在多个唯一约束
create table tb5(
id smallint unsigned auto_increment primary key,
username VARCHAR(20) NOT NULL UNIQUE KEY,
age tinyint UNSIGNED
);
13 默认约束
DEFAULT
默认值
当插入记录时,如果没有明确为字段赋值,则自动赋予默认值.
create table tb6(
id smallint unsigned auto_increment primary key,
username varchar(20) not null unique key,
sex enum('1','2','3') default '3'
);
总结
到此这篇关于关于MYSQL 你需要知道的数据类型和操作数据表的文章就介绍到这了,更多相关MYSQL数据类型和操作数据表内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341