实验一:整数

-- 测试一
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. 【转载】C#中List集合使用LastOrDefault方法查找出最后一个符合条件的元素

    在C#的List集合中,FirstOrDefault方法一般用来查找List集合中第一个符合条件的对象,如果未查到则返回相应默认值.其实如果要查找最后一个符合条件的List集合元素对象,可以使用Las ...

  2. 如何使用Fiddler抓取APP接口和微信授权网页源代码

    Fiddler,一个抓包神器,不仅可以通过手机访问APP抓取接口甚至一些数据,还可以抓取微信授权网页的代码. 下载安装 1. 下载地址(官网):  https://www.telerik.com/do ...

  3. 【转】高性能网络编程5--IO复用与并发编程

    对于服务器的并发处理能力,我们需要的是:每一毫秒服务器都能及时处理这一毫秒内收到的数百个不同TCP连接上的报文,与此同时,可能服务器上还有数以十万计的最近几秒没有收发任何报文的相对不活跃连接.同时处理 ...

  4. spring的@Scheduled定时任务,同一时间段的定时任务只会执行一个,其余的会被阻塞,@Scheduled注解定时任务并发执行解决办法,即多线程运行定时任务

    原文:https://blog.csdn.net/qq_35937303/article/details/88851064 现有两个定时任务 @Component("aa") pu ...

  5. 对 Jenkins+ANT+Jmeter 接口测试的实践

    转载地址:https://testerhome.com/topics/5262 1.前言 最近感觉大家都在讲Jenkins+jmeter+ant或maven的使用,但没有说到具体怎么投入到项目使用,只 ...

  6. 项目Beta冲刺——凡事预则立

    班级:软件工程1916|W 作业:项目Beta冲刺(团队) 团队名称:Echo 作业目标:规定代码规范,明确冲刺任务与计划 目录 团队博客汇总 讨论组长是否重选的议题和结论 下一阶段需要改进完善的功能 ...

  7. 【pathon基础】初识python

    一.python的起源 作者:Guido van Rossum(龟叔) 设计原则:优雅,简单,明确 二.解释型语言VS编译型语言 1.解释型语言:C#.python step1:程序员写代码: ste ...

  8. EntityFramework6 学习笔记(二)

    使用EF对数据库进行操作,整个过程就像操作数组一样,我们只管修改或向集合中添加值,最后通知EF保存修改后的结果就可以了. 准备工作 为了演示,我在数据库中建了两张表.class表用于表示班级,clas ...

  9. GlusterFS Dispersed Volume(纠错卷)总结

    https://blog.csdn.net/daydayup_gzm/article/details/52748812 一.概念 Dispersed Volume是基于ErasureCodes(纠错码 ...

  10. Access数据库连接封装类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...