Visual Foxpro Ⅴ isual foxpro在SQL方面支持数据定义、数 据查询和数据操纵功能,但在具体实现方面也 存在一些差异。另外,由于Ⅴ isual foxpro自身 在安全控制方面的缺陷,所以它没有提供数据 控制功能。 SQL虽然在各种数据库产品中得到了广泛的 支持,但迄今为止,它只是一种建议标准,各 种数据库产品中所实现的SQL在语法、功能等 方面均略有差异,本章讲述Ⅴ isual foxpro中 SQL的语法、功能与应用
Visual FoxPro 6 Visual FoxPro在SQL方面支持数据定义、数 据查询和数据操纵功能,但在具体实现方面也 存在一些差异。另外,由于Visual FoxPro自身 在安全控制方面的缺陷,所以它没有提供数据 控制功能。 SQL虽然在各种数据库产品中得到了广泛的 支持,但迄今为止,它只是一种建议标准,各 种数据库产品中所实现的SQL在语法、功能等 方面均略有差异,本章讲述Visual FoxPro 中 SQL的语法、功能与应用
Visual Foxpro 6.2数据定义 62.1建立表结构 命令格式是 CREATE TABLE|DBF<表名1>NAME<长表名FREE (<字段名1><类型>(<宽度>,小数位数>NULL|NOT NULL CHECK<条件表达式1 ERROR<出错显示信息习 DEFAULT<表达式,1 PRIMARY、KEY NQUE| REFERENCES<表名2AG<标识1 字段名2×类型>(<宽度>,小数位数> DINULL|NOT NULL CHECK<条件表达式2> ERROR<出错显示信息> DEFAULT<表达式2> PRIMARY KE Y UNIQUEJREFERENCES表名3TAG<标识2 FROMARRAY<数组名>
Visual FoxPro 7 6.2.1 建立表结构 CREATE TABLE|DBF <表名1> [NAME <长表名>][FREE] (<字段名1> <类型>(<宽度>[,<小数位数>])[NULL|NOT NULL] [CHECK <条件表达式1>[ERROR<出错显示信息>]] [DEFAULT < 表达式 1>][PRIMARY KEY | UNIQUE]REFERENCES <表名2>[TAG <标识1>] [<字段名2><类型>(<宽度>[,<小数位数>])[NULL|NOT NULL] [CHECK <条件表达式2>[ERROR<出错显示信息>]] [DEFAULT < 表达式 2>][PRIMARY KEY | UNIQUE]REFERENCES<表名3>[TAG<标识2>] ……)|FROMARRAY <数组名> 6.2 数据定义
Visual Foxpro 参数说明: 表名1:要建立的表的名称。 FREE:如果当前已经打开一个数据库,这里所建立 的新表会自动加入该数据库,除非使用参数 2FRE说明该新表作为一个自由表不茄人当前 数据库。如果没有打开的数据库,该参数无意义。 字段名1、字段名2 000鲁 所要建立的新表的字段 名,在语法格式中,,两个字段名之间的语法成分 都是对一个字段的属性说明,包括: 类型说明字段类型。 宽度及小数位数—字段宽度及小数位数。 NU NOT NULL该字段是否允许“空值 其默认值为NULL,即允许“空”值 CHECK条件表达式用来检测字段的值是否有效, 这是实行数据库的一种完整性检查
Visual FoxPro 8 表名1:要建立的表的名称。 FREE:如果当前已经打开一个数据库,这里所建立 的 新 表 会自 动 加入 该 数据 库 ,除 非 使用 参数 “FREE”说明该新表作为一个自由表不加入当前 数据库。如果没有打开的数据库,该参数无意义。 字段名1、字段名2、……:所要建立的新表的字段 名,在语法格式中,两个字段名之间的语法成分 都是对一个字段的属性说明,包括: 类型——说明字段类型。 宽度及小数位数——字段宽度及小数位数。 NULL、NOT NULL——该字段是否允许“空值” , 其默认值为NULL,即允许“空”值。 CHECK 条件表达式——用来检测字段的值是否有效, 这是实行数据库的一种完整性检查
Visual Foxpro ERROR出错显示信息——当完整性检查有错误,即 条件表达式的值为假时的提示信息。应当注意,当 为一个表的某个字段建立了实行完整性检测的条件 表达式后,在对该数据表输入数据时,系统会自动 检测所输入的字段值是否使条件表达式为假,当有 个数据使其为假时,系统自动显示这里所提示的 出错信息。 DEFAULT表达式—为一个字段指定的默认值 PRIMARY KEY指定该字段为关键字段,非数据 库表不能使用该参数。 UNIQUE指定该字段为一个侯选关键字段。注意, 指定为关键或侯选关键的字段都不允许出现重复值, 这称为对字段值的唯一性约束
Visual FoxPro 9 ERROR 出错显示信息——当完整性检查有错误,即 条件表达式的值为假时的提示信息。应当注意,当 为一个表的某个字段建立了实行完整性检测的条件 表达式后,在对该数据表输入数据时,系统会自动 检测所输入的字段值是否使条件表达式为假,当有 一个数据使其为假时,系统自动显示这里所提示的 出错信息。 DEFAULT 表达式——为一个字段指定的默认值。 PRIMARY KEY——指定该字段为关键字段,非数据 库表不能使用该参数。 UNIQUE——指定该字段为一个侯选关键字段。注意, 指定为关键或侯选关键的字段都不允许出现重复值, 这称为对字段值的唯一性约束
REFERENCES表名—这里指定的表作为新建表的 永久性父表,新建表作为子表 TAG标识—父表中的关联字段,若缺省该参数,则 默认父表的主索引字段作为关联字段。 数组名—用指定数组的值建立输入表 从以上命令格式可以看出,用 CREATE TABLE命令 建立表可以完成用表设计器完成的所有功能。除了 建立表的基本功能外,它还包括满足实体完整性的 主关键字(主索引) PRIMARY KEY、定义域完整 性的 CHECK约束東及出错提示信息 ERROR、定义默 认值的 DEFAULT等。另外还有描述表之间联系的 FOREIGN KEY和 REFERENCES等。 10
Visual FoxPro 10 REFERENCES 表名——这里指定的表作为新建表的 永久性父表,新建表作为子表。 TAG 标识——父表中的关联字段,若缺省该参数,则 默认父表的主索引字段作为关联字段。 数组名——用指定数组的值建立输入表。 从以上命令格式可以看出,用CREATE TABLE命令 建立表可以完成用表设计器完成的所有功能。除了 建立表的基本功能外,它还包括满足实体完整性的 主关键字(主索引)PRIMARY KEY、定义域完整 性的CHECK约束及出错提示信息ERROR、定义默 认值的DEFAULT等。另外还有描述表之间联系的 FOREIGN KEY和REFERENCES等