MySQL数据库基础:数据类型及列类型

QQ1053538388

QQ1053538388

2016-01-29 14:56

MySQL数据库基础:数据类型及列类型,MySQL数据库基础:数据类型及列类型

我们要把现实世界中的各种信息转换成计算机能理解的东西,这些转换后的信息就形成了数据。例如,某人的出生日期是“1987年5月23日”,他的身高是170厘米,等等。数据不仅包括数字、字母、文字和其他特殊字符组成的文本形式的数据,而且还包括图形、图像、动画、影像、声音等多媒体数据。但使用最多、最基本的仍然是文本数据。

    1. MySQL的数据类型 

    在MySQL中有如下几种数据类型: 

    (1)数值型 

    数值是诸如32 或153.4 这样的值。MySQL 支持科学表示法,科学表示法由整数或浮点数后跟“e”或“E”、一个符号(“+”或“-”)和一个整数指数来表示。1.24E+12 和23.47e-1 都是合法的科学表示法表示的数。而1.24E12 不是合法的,因为指数前的符号未给出。 

    浮点数由整数部分、一个小数点和小数部分组成。整数部分和小数部分可以分别为空,但不能同时为空。 

    数值前可放一个负号“-”以表示负值。 

    (2)字符(串)型 

    字符型(也叫字符串型,简称串)是诸如“Hello, world!”或“一个馒头引起的血案”这样的值,或者是电话号码87398413这样的值。既可用单引号也可用双引号将串值括起来。
 
    初学者往往分不清数值87398143和字符串87398143的区别。都是数字啊,怎么一个要用数值型,一个要用字符型呢?关键就在于:数值型的87398143是要参与计算的,比如它是金融中的一个货款总额;而字符型的87398143是不参与计算的,只是表示电话号码,这样的还有街道号码、门牌号码等等,它们都不参与计算。 

    (3)日期和时间型 

    日期和时间是一些诸如“2006-07-12”或“12:30:43”这样的值。MySQL还支持日期/时间的组合,如“2006-07-12 12:30:43”。 

    (4)NULL值 

    NULL表示未知值。比如填写表格中通讯地址不清楚留空不填写,这就是NULL值。 

    我们用Create Table语句创建一个表(参看前面的章节),这个表中包含列的定义。例如我们在前面创建了一个joke表,这个表中有content和writer两个列:

    

   定义一个列的语法如下:

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/mysql/)

 

   其中列名由col_name 给出。列名可最多包含64个字符,字符包括字母、数字、下划线及美元符号。列名可以名字中合法的任何符号(包括数字)开头。但列名不能完全由数字组成,因为那样可能使其与数据分不开。MySQL保留诸如SELECT、DELETE和CREATE这样的词,这些词不能用做列名,但是函数名(如POS 和MIN)是可以使用的。 

    列类型col_type表示列可存储的特定值。列类型说明符还能表示存放在列中的值的最大长度。对于某些类型,可用一个数值明确地说明其长度。而另外一些值,其长度由类型名蕴含。例如,CHAR(10) 明确指定了10个字符的长度,而TINYBLOB值隐含最大长度为255个字符。有的类型说明符允许指定最大的显示宽度(即显示值时使用多少个字符)。浮点类型允许指定小数位数,所以能控制浮点数的精度值为多少。 

    可以在列类型之后指定可选的类型说明属性,以及指定更多的常见属性。属性起修饰类型的作用,并更改其处理列值的方式,属性有以下类型: 

    (1)专用属性用于指定列。例如,UNSIGNED 属性只针对整型,而BINARY属性只用于CHAR 和VARCHAR。 

    (2)通用属性除少数列之外可用于任意列。可以指定NULL 或NOT NULL 以表示某个列是否能够存放NULL。还可以用DEFAULT,def_value 来表示在创建一个新行但未明确给出该列的值时,该列可赋予值def_value。def_value 必须为一个常量;它不能是表达式,也不能引用其他列。不能对BLOB 或TEXT 列指定缺省值。 

    如果想给出多个列的专用属性,可按任意顺序指定它们,只要它们跟在列类型之后、通用属性之前即可。类似地,如果需要给出多个通用属性,也可按任意顺序给出它们,只要将它们放在列类型和可能给出的列专用属性之后即可。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/mysql/)

    2. MySQL的列(字段)类型

    数据库中的每个表都是由一个或多个列(字段)构成的。在用CREATE TABLE语

展开更多 50%)
分享

猜你喜欢

MySQL数据库基础:数据类型及列类型

MySQL mysql数据库
MySQL数据库基础:数据类型及列类型

MySQL 数据类型 详解

编程语言 网络编程
MySQL 数据类型 详解

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

MySQL 数据类型和建库策略

编程语言 网络编程
MySQL 数据类型和建库策略

MySQL的数据类型和建库策略

MySQL mysql数据库
MySQL的数据类型和建库策略

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

MySQL 的数据类型和建库策略

MySQL mysql数据库
MySQL 的数据类型和建库策略

说明MySQL地数据类型以及建库策略

编程语言 网络编程
说明MySQL地数据类型以及建库策略

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

我是大导演 MTV创作速成教程

我是大导演 MTV创作速成教程

MyGeneration连接MySql数据库的解决办法

MyGeneration连接MySql数据库的解决办法
下拉加载更多内容 ↓