实验一:整数

-- 测试一
create database test;-- 新建数据库,如果已经有了就不需要再创建了
USE test;-- 打开数据库
drop table if exists test1;-- 如果存在表test1则删除
create table TEST1(-- 新建表test1
a INT-- 表test1只有一个a列
);
insert into test1 values(123456);-- 向表test1中插入元素
select * from test1;-- 查询表中全部内容

注: -- 行注释减减加空格表示行注释

-- 测试二
drop table if exists test2;
create table TEST2(
a INT(11)
);
insert into test2 values(123456);
select * from test2;
-- 测试三
USE test;
drop table if exists test3;
create table TEST3(
a INT(11) zerofill
);
insert into test3 values(123456);
select * from test3;

INT后面括号的数表示显示宽度,不是占多少字节;

zerofill填充0,在Navicat中显示不出零,在控制台能正常显示并看到填充的0

2.实验二:实数

use test;
drop table if exists test4;
CREATE TABLE test4(
c1 float(10,2),-- 长度是10小数占两位小数点不占位
c2 decimal(10,2)
); insert into test4 VALUES
(131072.32,131072.32);
insert into test4 VALUES
(131072.5678,131072.1234); select * from test4;

decimal比较精确,当涉及到钱的时候通常用这种类型

3.时间和时间戳

use test;

drop table if exists test5;
CREATE TABLE test5(
c1 datetime,
c2 timestamp,
c3 char(10)
); insert into test5 VALUES (now(),CURRENT_TIMESTAMP,'布朗');
-- now()计算机系统的当前时间
-- current_timestamp当前时间戳
insert into test5 VALUES ('1998-10-05 10:15:25',CURRENT_TIMESTAMP,'小布朗'); update test5 set c3='马丁·路德'where c3 = '小布朗';-- 修改命令 select * from test5;

若定义一个字段为timestamp类型,这个字段的时间数据会随着其他字段修改的时候自动刷新,所以这个数据类型的字段可以存放这条记录最后被修改的时间

4.字符串类型

-- 字符串类型测试一
use test; drop table if exists test6;
CREATE TABLE test6(
c1 char(4),
c2 varchar(4)
)ENGINE=myisam;
-- ENGINE=myisam存储引擎 insert into test6 VALUES ('','');
insert into test6 VALUES ('ab','ab');
insert into test6 VALUES ('abcd','abcd'); select * from test6;
-- 字符串类型测试二
use test; drop table if exists test7;
CREATE TABLE test7(
v VARCHAR(4),
c CHAR(6)
); insert into test7 VALUES ('ab ','ab '); select CONCAT(v,'+'),CONCAT(c,'+') from test7;
-- concat(,)字符串连接函数

5.复合类型

enum多选一

set多选

-- 自增长列
drop table if exists test9;
CREATE TABLE test9(
c1 int(11) AUTO_INCREMENT PRIMARY KEY,
c2 char(10)
)ENGINE = myisam,charset=gbk,AUTO_INCREMENT=10000;
insert into test9 value(null,'A');
select * from test9;

代理键

自然键

-- 布尔型
drop table if exists test10;
CREATE TABLE test10(
c1 bool,#实际等同于tinyint(1)
c2 char(10)
)ENGINE = myisam,charset=gbk;
insert into test10 value(1,'A');
select * from test10 where c1 = true;
use test;
-- 存储文件的目录?转义字符
drop table if exists test11;
CREATE TABLE test11(path VARCHAR (99));
insert into test11 values('C:\\Program Files\\MySQL Server');
select * from test11;

MySQL各种类型实验的更多相关文章

  1. MYSQL索引类型。MYSQLc储存引擎

                                                            MYSQL索引类型,MYSQLc储存引擎 MySQL索引创建与删除 MySQL存储引擎的 ...

  2. MySQL索引类型总结和使用技巧以及注意事项

    索引是快速搜索的关键.MySQL索引的建立对于MySQL的高效运行是很重要的.下面介绍几种常见的MySQL索引类型 在数据库表中,对字段建立索引可以大大提高查询速度.假如我们创建了一个 mytable ...

  3. 详解mysql int类型的长度值问题【转】

    mysql在建表的时候int类型后的长度代表什么? 是该列允许存储值的最大宽度吗? 为什么我设置成int(1), 也一样能存10,100,1000呢. 当时我虽然知道int(1),这个长度1并不代表允 ...

  4. MySQL数据类型 int(M) 表示什么意思?详解mysql int类型的长度值问题

    MySQL 数据类型中的 integer types 有点奇怪.你可能会见到诸如:int(3).int(4).int(8) 之类的 int 数据类型.刚接触 MySQL 的时候,我还以为 int(3) ...

  5. MySQL服务 - MySQL列类型、SQL模式、数据字典

    MySQL列类型的作用: 列类型可以简单理解为用来对用户往列种存储数据时做某种范围"限定",它可以定义数据的有效值(字符.数字等).所能占据的最大存储空间.字符长度(定长或变长). ...

  6. MySQL服务 - MySQL变量类型及变量设置

    一.MySQL变量类型: MySQL通过变量来定义当前服务器的特性,保存状态信息等.我们可以通过手动更改变量的值来配置MySQL,也可以通过变量获得MySQL的当前状态信息.MySQL的变量类型可以从 ...

  7. MySQL表类型和存储引擎版本不一致解决方法

    使用的是老版本的mysql客户端Navicate 8 ,mysql 服务端用的是mysql5.6的版本,在修改版本引擎的时候出现版本不对; mysql error ‘TYPE=MyISAM’ 解决办法 ...

  8. mysql 日期类型比较

    MySQL 日期类型:日期格式.所占存储空间.日期范围 比较. 日期类型        存储空间       日期格式                 日期范围 ------------ ------ ...

  9. MySQL日期数据类型、MySQL时间类型使用总结

    MySQL:MySQL日期数据类型.MySQL时间类型使用总结 MySQL 日期类型:日期格式.所占存储空间.日期范围 比较. 日期类型 存储空间 日期格式 日期范围 ------------ --- ...

随机推荐

  1. 记录一次git回滚代码

    老大临时让更新一版代码到本地,熟练的git fetch/git merge 之后,出来了一批改动的文件,但是并不是我改动的. 我以为是版本迭代出来的其他同事改的,我就直接给add commit到我的版 ...

  2. SpringBoot加载配置文件(@PropertySource@importSource@Value)

    情景描述 最近新搭建了一个项目,从Spring迁到了Springboot,为了兼容Spring加载配置文件的风格,所以还想把PropertyPlaceholderConfigurer放在.xml文件里 ...

  3. Spring 实例化Bean的3种方式

    要使用Spring中的Bean,需要先创建这个Bean的实例. 实例化Bean有3种方式: 构造器方式 静态工厂方式 实例工厂方式 构造器方式 构造器方式是最常用的.在Bean中写构造函数,然后在配置 ...

  4. python基础-模块(全是理论,没有代码)

    模块 概念:一系列功能的结合体.相当于模块包着一堆函数与代码.本质上是py文件. 来源: python内置的模块----→ python解释器的模块 第三方的模块 -----→ 其他人编写提供的 自定 ...

  5. [SDIO].SDIO总线详解

    转自:https://blog.csdn.net/liuhan33025/article/details/51131848 SDIO接口是在SD内存卡接口的基础上发展起来的接口,SDIO接口兼容以前的 ...

  6. Python的包管理工具

    Python的包管理工具 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.为什么使用包管理 Python的模块或者源文件直接可以复制到目标项目目录中,就可以导入使用了. 但是为了 ...

  7. Python入门篇-内建函数

    Python入门篇-内建函数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常见的内建函数案例  1>.标识id 返回对象的唯一标识,CPython返回内存地址. #!/ ...

  8. js中的attribute详解

    Attribute是属性的意思,文章仅对部分兼容IE和FF的Attribute相关的介绍.attributes:获取一个属性作为对象getAttribute:获取某一个属性的值object.getAt ...

  9. CentOS7下的AIDE入侵检测配置

    一.AIDE的概念 AIDE:Advanced Intrusion Detection Environment,是一款入侵检测工具,主要用途是检查文档的完整性.AIDE在本地构造了一个基准的数据库,一 ...

  10. Android Handler机制彻底梳理

    Android的消息机制其实也就是Handler相关的机制,对于它的使用应该熟之又熟了,而对于它的机制的描述在网上也一大堆[比如15年那会在网上抄了一篇https://www.cnblogs.com/ ...