MySQL学习之路(二)——数据类型和操作数据表
数据类型和操作数据表
2.1 MySQL类型之整型
2.2 MySQL数据类型之浮点型
2.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
2.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类型
2.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表,包含用户名,年龄,工资.
2.6 查看数据表
SHOW TABLES [FROM db_name] [LIKE 'pattern' | WHERE expr]
2.7 查看数据表结构
SHOW COLUMNS FROM tbl_name
2.8 MySQL记录的插入与查找
插入记录:INSERT [INTO] tblname [(colname,...)] VALUES(val,..)
insert into tb1 values('jack',18,6000.00);
记录查找:SELECT expr,... FROM tbl_name;
select * from tb1;
2.9 MySQL空值 与 非空
NULL ,字段值可以为空
NOT NULL ,字段值禁止为空
在插入字段的时候添加NULL和NOT NULL
2.10 自动编号
AUTO_INCREMENT
自动编号,且必须与主键组合使用
默认情况下,起始值为1,每次的增量为1;
2.11 初涉主键约束:
PRIMARY KEY
主键约束
每张数据表只能存在一个主键
主键保证记录的唯一性
主键自动为NOT NULL
AUTO_INCREMENT一定要跟PRIMARY KEY一起使用,
但是PRIMAYR KEY 不一定要跟AUTO_INCREMENT一起使用.
2.12 初涉唯一约束
UNIQUE KEY
唯一约束
唯一约束可以保证记录的唯一性
唯一约束的字段可以为空值(NULL)
每张数据表可以存在多个唯一约束
create table tb5(
id smallint unsigned auto_increment primary key,
username VARCHAR(20) NOT NULL UNIQUE KEY,
age tinyint UNSIGNED
);
2.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(二) —— 数据类型与操作数据表
数据类型 数据类型是指列.存储过程参数.表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型. 整型:TYNINT(-2^7 ~ 2^7-1); SMALLINT(-2^15 ~ ...
- MySQL学习总结(二)数据库以及表的基本操作
上一节中详细的介绍了关于MySQL数据库的安装过程,接下来我们就该对数据库以及表进行一些基本的操作了. 1.数据类型 MySQL数据库中提供了整数类型.浮点数类型.定点数类型.日期和时间类型.字符串类 ...
- 我的MYSQL学习心得(二) 数据类型宽度
我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- Mysql学习笔记(二)数据类型 补充
原文:Mysql学习笔记(二)数据类型 补充 PS:简单的补充一下数据类型里的String类型以及列类型... 学习内容: 1.String类型 2.列类型存储需求 String类型: i.char与 ...
- 我的MYSQL学习心得(二)
原文:我的MYSQL学习心得(二) 我的MYSQL学习心得(二) 我的MYSQL学习心得(一) 我的MYSQL学习心得(三) 我的MYSQL学习心得(四) 我的MYSQL学习心得(五) 我的MYSQL ...
- MySQL学习之路(一)——初涉MySQL。
MySQL学习之路(一) 1.1MySQL的概述 MySQL由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一个开源的关系型数据库管理系统. MySQL分为社区版和企业版. 1 ...
- MySql 学习之路-高级1
Mysql自学之路-高级1 目录: 1.CREATE DATABASE 创建数据库 2.CREATE TABLE 创建数据表 3.INSERT INTO SELECT 把一个表中的数据拷贝到另一个表中 ...
- MySql 学习之路-基础
Mysql 自学之路 本文包含基础部分与高级部分 一.基础 数据库操作 Show databases:显示所有的数据库 Show tables: 显示所有的数据库表 Use databasename: ...
- mysql学习之路_事物_存储过程_备份
数据备份与还原 备份:将当前已有的数据保留. 还原:将已经保留的数据恢复到对应表中 为什么要做数据备份 1,防止数据丢失,被盗,误操作 2,保护数据记录 数据备份还原方式有多种:数据表备份 单表数据备 ...
随机推荐
- 【问题:发现与解决】angularJs指令在dijit控件中的使用
由于公司主要用的JS框架是DOJO,最近又运用了angularJs.因此,不可能避免的遇到dojo控件和angular指令(directive)共用时遇到的一些问题,问题如下: <input ...
- [C++]多线程: 教你写第一个线程
原文:http://blog.csdn.net/cn_wk/article/details/62236057 hello thread! 声明线程A的端口号 #include <pthread. ...
- Java快速入门-03-小知识汇总篇(全)
Java快速入门-03-小知识汇总篇(全) 前两篇介绍了JAVA入门的一系小知识,本篇介绍一些比较偏的,说不定什么时候会用到,有用记得 Mark 一下 快键键 常用快捷键(熟记) 快捷键 快捷键作用 ...
- Angular1.x 基础总结
官方文档:Guide to AngularJS Documentation w3shools angularjs教程 wiki <AngularJS权威教程> Introd ...
- 爬虫day03之scrapy安装与使用
参考博客 技术问题不要问,业务问题可以问是不是有一种更好的方法? scrapy windows安装 1. 安装scrapy 参考博客 https://www.cnblogs.com/wupeiqi/a ...
- 使用拦截器拦截html参数
公司最新需求:根据传递的参数进行业务判断,如果符合条件则继续后面的业务逻辑,否则跳转到指定的错误页面.有些是请求的controller 使用了spring aop的方式进行验证:但是有些是html页 ...
- BIEE总结
一,数据仓库,BI涉及到的相关概念 1.DW: 即数据仓库(Data Warehouse),是一个面向主题的(Subject Oriented).集成的(Integrated).相对稳定的(N ...
- java抽象类,接口与异常
1.抽象类: 定义;包含一个抽象方法的类称称为抽象类,抽象类在class前使用adstract关键词修饰. 抽象方法;只声明未实现的方法称为抽象方法,使用adstract关键字声明该方法. 抽象类定义 ...
- 每年支付 m 次的年金
每年支付 m 次的年金 n 表示年数.m 表示每年的付款次数.i 表示年实际利率. 一.期末付年金(annuity-immediate payable mthly): 每年支付m次, 每次的付款为1/ ...
- JAVA把毫秒数转换成日期
JAVA把毫秒数转换成日期 systemMillonSenconds = System.currentTimeMillis(); 2012-08-17 14:42 1456人阅读 评论(1) 收藏 ...