use books && books 是表的名称
?fsize(books)
系统提示找不到books这个变量,在程序中也是这样
请教高手fsize()函数到底怎么用?
如何知道表的总字段宽度?
谢谢了!!!
fsize( ) 函数
示例 请参阅
以字节为单位,返回指定字段或文件的大小。
语法
FSIZE(cFieldName [, nWorkArea | cTableAlias] | cFileName)
返回值类型
数值型
参数
cFieldName
指定字段名。
nWorkArea
指定表所在的工作区,fsize( ) 函数返回该表中某个字段的大小。
如果在指定工作区中没有打开的表,fsize( ) 函数的返值为 0。
cTableAlias
指定表的别名,fsize( ) 函数返回该表中某个字段的大小。
如果指定的表别名不存在,Visual FoxPro 将产生错误信息。
cFileName
指定文件名,fsize( ) 函数以字节为单位返回其大小。
说明
SET COMPATIBLE 的当前设置决定了 fsize( ) 函数返回的是字段大小还是文件大小。如果 SET COMPATIBLE 设置为 OFF 或 FOXPLUS(默认值),则 fsize( ) 函数返回字段大小;如果 SET COMPATIBLE 设置为 ON 或 DB4,则 fsize( ) 函数返回文件大小。
下表列出了各种字段类型的默认大小(以字节为单位)。
字段类型 默认的字段大小(以字节为单位)
货币型 8
日期型 8
日期时间型 8
双精度型 8
整型 4
逻辑型 1
备注型 4
通用型 4
可以使用 DISPLAY STRUCTURE 或 LIST STRUCTURE 命令显示字段大小。
如果省略可选参数 nWorkArea 和 cTableAlias,fsize( ) 函数将返回当前表和工作区中字段的大小。
[此贴子已经被作者于2006-1-3 17:10:44编辑过]
非常感谢您的指点!
不过我还是不太明白(cFieldName [, nWorkArea | cTableAlias] | cFileName)意味着什么
麻烦高手给我具体的做个示例,比如我想求整个表的字段宽度,求个书名的字段宽度该怎么办该怎么办?
万份感谢!!!
fsize( ) 函数示例
下面的示例用 fsize( ) 函数返回 customer 表中两个字段的大小。
set compatible off
close databases
open database (home( ) + 'samples\data\testdata')
use customer && 打开 customer 表
clear
? fsize('contact') && 显示 30
? fsize('cust_id') && 显示 6