当前位置: 首页 > news >正文

网站怎么架设广州网站制作报价

网站怎么架设,广州网站制作报价,广东建设信息网查询成绩,做网站需要招什么条件【转】07-数据类型 介绍 存储引擎决定了表的类型#xff0c;而表内存放的数据也要有不同的类型#xff0c;每种数据类型都有自己的宽度#xff0c;但宽度是可选的 详细参考链接#xff1a;http://www.runoob.com/mysql/mysql-data-types.html mysql常用数据类型概括#x…【转】07-数据类型 介绍 存储引擎决定了表的类型而表内存放的数据也要有不同的类型每种数据类型都有自己的宽度但宽度是可选的 详细参考链接http://www.runoob.com/mysql/mysql-data-types.html mysql常用数据类型概括 #1. 数字整型tinyint int bigint小数float 在位数比较短的情况下不精准double 在位数比较长的情况下不精准0.000001230123123123存成0.000001230000decimal如果用小数则用推荐使用decimal精准内部原理是以字符串形式去存#2. 字符串char10简单粗暴浪费空间存取速度快root存成root000000varchar精准节省空间存取速度慢sql优化创建表时定长的类型往前放变长的往后放比如性别 比如地址或描述信息255个字符超了就把文件路径存放到数据库中。比如图片视频等找一个文件服务器数据库中只存路径或url。#3. 时间类型最常用datetime#4. 枚举类型与集合类型   enum 和set   一、数值类型 整数类型TINYINT SMALLINT MEDIUMINT INT BIGINT 作用存储年龄等级id各种号码等 tinyint[(m)] [unsigned] [zerofill]小整数数据类型用于保存一些范围的整数数值范围有符号-128 127无符号0 255PS MySQL中无布尔值使用tinyint(1)构造。int[(m)][unsigned][zerofill]整数数据类型用于保存一些范围的整数数值范围有符号-2147483648 2147483647无符号0 4294967295bigint[(m)][unsigned][zerofill]大整数数据类型用于保存一些范围的整数数值范围有符号-9223372036854775808 9223372036854775807无符号0 18446744073709551615 View Code   验证1有符号和无符号tinyint 有符号tinyint # 创建数据库db4 create database db4 charset utf8;# 切换到当前db4数据库 mysql use db4;# 创建t1 规定x字段为tinyint数据类型默认是有符号的 mysql create table t1(x tinyint);# 验证插入-1这个数 mysql insert into t1 values(-1);# 查询 表记录查询成功证明默认是有符号类型 mysql select * from t1; ------ | x | ------ | -1 | ------#执行如下操作会发现报错。因为有符号范围在(-128,127) mysql insert into t1 values(-129),(128); ERROR 1264 (22003): Out of range value for column x at row 1无符号tinyint # 创建表时定义记录的字符为无符号类型0,255 使用unsigned mysql create table t2(x tinyint unsigned);# 报错超出范围 mysql insert into t2 values(-129); ERROR 1264 (22003): Out of range value for column x at row 1# 插入成功 mysql insert into t2 values(255); Query OK, 1 row affected (0.00 sec)   验证2int类型后面的存储是显示宽度而不是存储宽度 mysql create table t3(id int(1) unsigned);#插入255555记录也是可以的 mysql insert into t3 values(255555);mysql select * from t3; -------- | id | -------- | 255555 | -------- ps:以上操作还不能够验证再来一张表验证用zerofill 用0填充# zerofill 用0填充 mysql create table t4(id int(5) unsigned zerofill);mysql insert into t4 value(1); Query OK, 1 row affected (0.00 sec)#插入的记录是1但是显示的宽度是00001 mysql select * from t4; ------- | id | ------- | 00001 | ------- 1 row in set (0.00 sec)   注意为该类型指定宽度时仅仅只是指定查询结果的显示宽度与存储范围无关存储范围如下 其实我们完全没必要为整数类型指定显示宽度使用默认的就可以了 默认的显示宽度都是在最大值的基础上加1 int的存储宽度是4个Bytes即32个bit即2**32 无符号最大值为4294967296-1 有符号最大值2147483648-1 有符号和无符号的最大数字需要的显示宽度均为10而针对有符号的最小值则需要11位才能显示完全所以int类型默认的显示宽度为11是非常合理的 最后整形类型其实没有必要指定显示宽度使用默认的就ok   二、浮点型 定点数类型: DEC等同于DECIMAL 浮点类型FLOAT DOUBLE 作用存储薪资、身高、体重、体质参数等 语法 -------------------------FLOAT------------------- FLOAT[(M,D)] [UNSIGNED] [ZEROFILL] #参数解释单精度浮点数非准确小数值M是全长D是小数点后个数。M最大值为255D最大值为30#有符号-3.402823466E38 to -1.175494351E-38,1.175494351E-38 to 3.402823466E38#无符号1.175494351E-38 to 3.402823466E38 #精确度 **** 随着小数的增多精度变得不准确 ****-------------------------DOUBLE----------------------- DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL]#参数解释 双精度浮点数非准确小数值M是全长D是小数点后个数。M最大值为255D最大值为30#有符号-1.7976931348623157E308 to -2.2250738585072014E-3082.2250738585072014E-308 to 1.7976931348623157E308#无符号2.2250738585072014E-308 to 1.7976931348623157E308#精确度****随着小数的增多精度比float要高但也会变得不准确 **** --------------------DECIMAL------------------------ decimal[(m[,d])] [unsigned] [zerofill]#参数解释准确的小数值M是整数部分总个数负号不算D是小数点后个数。 M最大值为65D最大值为30。#精确度**** 随着小数的增多精度始终准确 ****对于精确数值计算时需要用此类型decaimal能够存储精确值的原因在于其内部按照字符串存储。 验证三种类型建表 #1验证FLOAT类型建表 mysql create table t5(x float(256,31)); ERROR 1425 (42000): Too big scale 31 specified for column x. Maximum is 30. mysql create table t5(x float(256,30)); ERROR 1439 (42000): Display width out of range for column x (max 255) mysql create table t5(x float(255,30)); #建表成功 Query OK, 0 rows affected (0.03 sec)#2验证DOUBLE类型建表 mysql create table t6(x double(255,30)); #建表成功 Query OK, 0 rows affected (0.03 sec)#3验证deimal类型建表 mysql create table t7(x decimal(66,31)); ERROR 1425 (42000): Too big scale 31 specified for column x. Maximum is 30. mysql create table t7(x decimal(66,30)); ERROR 1426 (42000): Too big precision 66 specified for column x. Maximum is 65. mysql create table t7(x decimal(65,30)); #建表成功 Query OK, 0 rows affected (0.00 sec) 验证三种类型的精度 # 分别对三张表插入相应的记录 mysql insert into t5 values(1.1111111111111111111111111111111);#小数点后31个1 Query OK, 1 row affected (0.01 sec)mysql insert into t6 values(1.1111111111111111111111111111111); Query OK, 1 row affected (0.01 sec)mysql insert into t7 values(1.1111111111111111111111111111111); Query OK, 1 row affected, 1 warning (0.00 sec)# 查询结果 mysql select * from t5; #随着小数的增多精度开始不准确 ---------------------------------- | x | ---------------------------------- | 1.111111164093017600000000000000 | ---------------------------------- 1 row in set (0.00 sec)mysql select * from t6; #精度比float要准确点但随着小数的增多同样变得不准确 ---------------------------------- | x | ---------------------------------- | 1.111111111111111200000000000000 | ---------------------------------- 1 row in set (0.00 sec)mysql select * from t7; #精度始终准确,d为30于是只留了30位小数 ---------------------------------- | x | ---------------------------------- | 1.111111111111111111111111111111 | ---------------------------------- 1 row in set (0.00 sec)   三、日期类型 DATE TIME DATETIME TIMESTAMP YEAR作用存储用户注册时间文章发布时间员工入职时间出生时间过期时间等 语法YEARYYYY1901/2155DATEYYYY-MM-DD1000-01-01/9999-12-31TIMEHH:MM:SS-838:59:59/838:59:59DATETIMEYYYY-MM-DD HH:MM:SS1000-01-01 00:00:00/9999-12-31 23:59:59 YTIMESTAMPYYYYMMDD HHMMSS1970-01-01 00:00:00/2037 年某时 验证 1、year   mysql create table t8(born_year year);#无论year指定何种宽度最后都默认是year(4) Query OK, 0 rows affected (0.03 sec)#插入失败超出范围1901/2155 mysql insert into t8 values- (1900),- (1901),- (2155),- (2156); ERROR 1264 (22003): Out of range value for column born_year at row 1 mysql select * from t8; Empty set (0.01 sec)mysql insert into t8 values- (1905),- (2018); Query OK, 2 rows affected (0.00 sec) #插入记录成功 Records: 2 Duplicates: 0 Warnings: 0mysql select * from t8; ----------- | born_year | ----------- | 1905 | | 2018 | ----------- 2 rows in set (0.00 sec)     2、date、year、datetime #创建t9表 mysql create table t9(d date,t time,dt datetime); Query OK, 0 rows affected (0.06 sec)#查看表的结构 mysql desc t9; -------------------------------------------- | Field | Type | Null | Key | Default | Extra | -------------------------------------------- | d | date | YES | | NULL | | | t | time | YES | | NULL | | | dt | datetime | YES | | NULL | | -------------------------------------------- 3 rows in set (0.14 sec) # 调用mysql自带的now()函数获取当前类型指定的时间 如下结构 mysql insert into t9 values(now(),now(),now()); Query OK, 1 row affected, 1 warning (0.01 sec)mysql select * from t9; ------------------------------------------- | d | t | dt | ------------------------------------------- | 2018-06-09 | 09:35:20 | 2018-06-09 09:35:20 | ------------------------------------------- 1 row in set (0.00 sec)   3、timestamp了解即可   mysql create table t10(time timestamp); Query OK, 0 rows affected (0.06 sec)mysql insert into t10 values(); Query OK, 1 row affected (0.00 sec)mysql insert into t10 values(null); Query OK, 1 row affected (0.00 sec)mysql select * from t10; ------ | time | ------ | NULL | | NULL | ------mysql insert into t10 values(now()); Query OK, 1 row affected (0.01 sec)mysql select * from t10; --------------------- | time | --------------------- | 2018-06-09 09:44:48 | --------------------- 1 row in set (0.01 sec)       datetime与timestamp的区别   在实际应用的很多场景中MySQL的这两种日期类型都能够满足我们的需要存储精度都为秒但在某些情况下会展现出他们各自的优劣。 下面就来总结一下两种日期类型的区别。1.DATETIME的日期范围是1001——9999年TIMESTAMP的时间范围是1970——2038年。2.DATETIME存储时间与时区无关TIMESTAMP存储时间与时区有关显示的值也依赖于时区。在mysql服务器 操作系统以及客户端连接都有时区的设置。3.DATETIME使用8字节的存储空间TIMESTAMP的存储空间为4字节。因此TIMESTAMP比DATETIME的空间利用率更高。4.DATETIME的默认值为nullTIMESTAMP的字段默认不为空not null,默认值为当前时间CURRENT_TIMESTAMP 如果不做特殊处理并且update语句中没有指定该列的更新值则默认更新为当前时间。 View Code     注意事项   注意啦注意啦注意啦 #1. 单独插入时间时需要以字符串的形式按照对应的格式插入 #2. 插入年份时尽量使用4位值 #3. 插入两位年份时69以20开头比如50, 结果2050 70以19开头比如71结果1971create table t12(y year);insert into t12 values (50),(71);select * from t12; ------ | y | ------ | 2050 | | 1971 | ------ View Code     综合练习 创建一张学生表student要求有id,姓名出生年份出生的年月日进班的时间以及来老男孩学习的现在具体时间。   mysql create table student(- id int,- name varchar(20),- born_year year,- birth date,- class_time time,- reg_time datetime- ); Query OK, 0 rows affected (0.02 sec)mysql insert into student values- (1,alex,1995,1995-11-11,11:11:11,2017-11-11 11:11:11),- (2,egon,1997,1997-12-12,12:12:12,2017-12-12 12:12:12),- (3,wsb,1998,1998-01-01,13:13:13,2017-01-01 13:13:13); Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: 0mysql select * from student; -------------------------------------------------------------------- | id | name | born_year | birth | class_time | reg_time | -------------------------------------------------------------------- | 1 | alex | 1995 | 1995-11-11 | 11:11:11 | 2017-11-11 11:11:11 | | 2 | egon | 1997 | 1997-12-12 | 12:12:12 | 2017-12-12 12:12:12 | | 3 | wsb | 1998 | 1998-01-01 | 13:13:13 | 2017-01-01 13:13:13 | -------------------------------------------------------------------- 3 rows in set (0.00 sec) View Code  转载于:https://www.cnblogs.com/orangehero/p/10360832.html
http://wiki.neutronadmin.com/news/255581/

相关文章:

  • 搭建html5网站百度指数分析工具
  • 淄博网站建设优化上汽wordpress主题安装ftp
  • c++做网站唐山seo推广公司
  • 做律师网站公司网站规划建设与推广
  • 建立网站的链接结构有哪几种形式简述其各自的优缺点天津seo推广服务
  • 适合网站设计的gif图片兰州网站推广建设公司
  • 怎么用大淘客做网站网络管理系统组成
  • 创新平台网站建设方案电商软件平台开发
  • 什么是建设型的网站高校网站群管理系统
  • 狗头网网站网站总体设计
  • 上海做展会的网站都有哪些单片机程序员开发网站
  • 网站站长在哪登陆后台3个典型网站建设公司
  • 网站建设的财务分析永久免费自助建站软件
  • 简述网络营销的方法襄阳网站seo
  • 哪个网站做兼职有保障企业网站建设个人博客
  • 网站内容建设的原则是什么外贸网站建设哪家公司比较好
  • 深圳制作网站主页衡阳市住房和城乡建设局官方网站
  • 忻州宁武网站建设wordpress 文章点赞插件
  • 网站建设实践论文网站怎么做出来的
  • 全国最大型网站建设高权重友情链接
  • 园区网站建设服务公司建筑网建筑规范
  • 太原规划网站泰州建筑工程网
  • 免费的ppt网站蚌埠网站制作公司
  • 淘金网站建设推广cd网站建设
  • dnf网站上怎么做商人帮人做微信是哪个网站
  • 网站建设 视频网站为什么改版
  • 找外包网站 和自己做wordpress 订阅
  • 什么网站教做美食上海优刻得官网
  • 广州省建设厅官方网站西安广告设计与制作公司
  • 重庆做商城网站jsp网站开发难吗