10 Integer

admin 的头像
Submitted by admin on 星期一, 2015-06-15 02:36

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
这个字段是用来存储整数的,比如节点id、vid。如果unsigned键为TRUE的话,那么将不允许使用负整数。Node表中vid字段就是采用的这种类型:

Drupal版本:

9数字型

admin 的头像
Submitted by admin on 星期一, 2015-06-15 02:34

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
数字型数据类型是用来存储数字的,它包括integer(整数)、serial(序列数)、 float(浮点数)、 和numeric(数字)类型。

Drupal版本:

8Text

admin 的头像
Submitted by admin on 星期一, 2015-06-15 02:34

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
Text字段用于大块的文本。例如,node_type表中的description字段就是这种类型。Text字段可以不使用默认值。

Drupal版本:

7Char

admin 的头像
Submitted by admin on 星期一, 2015-06-15 02:33

​作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
Char字段是定长字符字段。该字段的字符长度,可以使用length键定义。MySQL中char字段的长度为0–255字符。Drupal核心中,我并没有找到char类型的实例。Ubercart模块中的uc_countries表的country_iso_code_2、country_iso_code_3字段用到这一类型:

Drupal版本:

6Varchar

admin 的头像
Submitted by admin on 星期一, 2015-06-15 02:31

​作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
Varchar,也就是变长字符字段;对于长度小于256字符的文本,通常使用这一字段类型。它的最大的字符长度,可以使用length键定义。MySQL中 varchar 字段的长度为0–255字符(MySQL 5.0.2 及更早版本)和0–65,535字符(MySQL 5.0.3及以后版本);而PostgreSQL中varchar字段的长度则可以更大一些。

Drupal版本:

5文本型

admin 的头像
Submitted by admin on 星期一, 2015-06-15 02:30

​作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
文本型字段是用来包含文本的。

Drupal版本:

4Schema与数据库字段类型之间的映射关系

admin 的头像
Submitted by admin on 星期一, 2015-06-15 02:29

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
在模式定义中声明的字段类型,将会映射成具体数据库中的本地字段类型。例如,一个size为tiny的整数字段将映射为MySQL中的TINYINT字段,或者PostgreSQL中的smallint字段。我们以mysql为例,看看实际的映射,在includes/database/mysql/schema.inc文件中,类DatabaseSchema_mysql中的公共方法getFieldTypeMap(),列出了对应的映射关系。

Drupal版本:

3使用Schema(模式)模块

admin 的头像
Submitted by admin on 星期一, 2015-06-15 02:26

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
现在你可能会想,花这么大的功夫,创建一个这么复杂的数组,来向Drupal描述我们的表结构,是不是有点得不偿失啊?当你熟悉了这些语法结构以后,大多数的代码都是拷贝来,拷贝去,实际上你并不需要记忆太多,这非常类似于我们写的八股文。其次,存在第三方的模块,帮我们干这些脏活,这就是Schema(模式)模块,它的下载地址为:http://drupal.org/project/schema。下载了模块,将其启用。导航到“管理 〉结构 〉Schema”,点击Inspect(检查)标签,在这里,我们可以看到所有数据库表的模式定义。如果你为你的数据库表准备好了SQL脚本,那么使用模式模块,它就可以帮你自动生成模式定义,接着将其复制粘贴到你的.install文件中就可以了。

Drupal版本:

页面

Subscribe to Think in Drupal RSS