根据表记录建新表的问题,求大神指点!!
data.rar
(2.59 KB)
数据字典里包含了所有表的表结构信息,现在要根据这个表的记录来生成所有的表,使用CREAT DBF 表名称(字段名称 数据类型(字段长度,小数位))来建表,使用ALTER TABLE 来追加字段。我用了两个中间变量 b和C 程序代码:
USE 数据字典 IN 0 ALIAS sjzd DO WHILE .not.eof() b='('+ALLTRIM(STR(sjzd.字段大小))+','+ALLTRIM(STR(sjzd.小数位数))+')' ?b c=IIF(sjzd.小数位数=0,'('+ALLTRIM(STR(sjzd.字段大小))+')',b) ?c ?ALLTRIM(sjzd.字段名称)+' '+ALLTRIM(sjzd.数据类型)+c ?sjzd.表名称+(ALLTRIM(sjzd.字段名称)+' '+ALLTRIM(sjzd.数据类型)+c) &&这句可得到形如 qxb 操作员 c(20) CREATE dbf sjzd.表名称+(ALLTRIM(sjzd.字段名称)+' '+ALLTRIM(sjzd.数据类型)+c)来插入括号和逗号,执行到CREATE dbf sjzd.表名称+(ALLTRIM(sjzd.字段名称)+' '+ALLTRIM(sjzd.数据类型)+c) 这句的时候报告说语法错误,试了一下 CREATE dbf 表名称(字段名称 c(str(20)))报告语法错误,括号内的数字不能为字符型,不知道是否是这原因。 请问大神们怎么才能得到(字段名称 数据类型(字段长度,小数位))这其中的括号,逗号及不是字符型的字段长度和小数位?我只想到了以上的笨办法,求大神指点!!