VFP数据库表如何设置字符型字段只能输入数字字符?

还有建立一个索引时如何使先按一个字段的升序排列,相同时再按另一个字段的降序排列?
我要输的是只能是数字字符,还有第二个问题一个是升序,一个是降。

解问题一
如果表包含在数据库中,即数据库表,可以在该表的“表设计器”中,该字符型字段的“输入掩码”文本框中输入与字段宽度等宽位数的“9”,比如字段宽度为5,则输入掩码为“99999”。

解问题二
这里有个概念,如果 INDEX 的<索引表达式>是单个字段
1、数值型字段,按照数值的大小升序排列
2、字符型字段,按照字符的ASCII值的大小升序排列
3、日期或日期时间型字段,按照日期的远近,从远到近排列

如果 INDEX 的<索引表达式>中包含多个字段,那么首先必须要能求出该表达式的值,然后才能做到按什么顺序排列,为了简化讨论,略过日期或日期时间型,因为日期或日期时间型必能通过函数转换成数值型或字符型数据
1、如果这多个字段都是数值型,则按照索引表达式的数值运算的值的大小升序排列
2、如果这多个字段都是字符型,则各字段联接(+或-)后,按照联接的顺序各字段依字符串的大小(按照ASCII)升序排列
3、如果这多个字段中有数值型也有字符型,则索引表达式应将其统一到同一数据类型。

举例:设表T1.DBF,字段C1、C2为数值型,字段C3、C4为字符型
** 按C1+C2的和升序排列
INDEX ON C1+C2 TO T1

** 字段C3升序,相同时C4升序
INDEX ON C3+C4 TO T2

** 字段C1升序,相同时C2升序
INDEX ON STR(C1)+STR(C2) TO T3 && 将C1、C2都转成字符型,以字符串大小排列

** 字段C1升序,相同时C3升序
INDEX ON STR(C1)+C3 TO T4 && 将C1转成字符型,以字符串大小排列

** 字段C3升序,相同时C4降序
INDEX ON C3+STR(127-ASC(C4)) TO T5 && 127为ASCII的最大值

** 字段C1降序,相同时C3升序
INDEX ON STR(999-C1)+C3 TO T6 && 假设数值型字段C1的宽度为3位,999为该字段允许的最大值
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-10-04
在TEXTBOX控件里INPUTMASK写XXXXXX,就表示只能输入字符了。

你说的就是排序时候写两个字段名就行了

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网