2010-11-02 56 views
0

我想将jobact中插入的每条记录复制到新表jobactupdates。我为此使用存储过程。两个表都完全一样,并且具有相同的列数。当我使用插入查询插入jobact中的数据时,存储过程失败并显示数据类型不匹配错误。foxpro存储过程中的数据类型不匹配

我的代码看起来是这样的:当您尝试插入不合适的数据类型为外地发生

PROCEDURE insertData 

INSERT INTO jobactupdates (jobcode ,jobdescr ,fileno ,port ,mastcode ,mastdescr ,mastdescr1 ,shipper ,goods ,unit1 ,qty ,unit ,vesname ,arremarks ,arrdate ,remarks ,docstat ,docdate ,blno ,bldate ,jastat ,rate ,demand ,received ,balance ,transpor,dldate); 

VALUES(jobact.jobcode,jobact.jobdescr,jobact.fileno,jobact.port,jobact.mastcode,jobact.mastdescr,jobact.mastdescr1,jobact.shipper,jobact.goods,jobact.unit1,jobact.qty,jobact.unit,jobact.vesname,jobact.arremarks,jobact.arrdate,jobact.remarks,jobact.docstat,jobact.docdate,jobact.blno,jobact.bldate,jobact.jastat,jobact.rate,jobact.received,jobact.balance,jobact.transpor,jobact.dldate); 

ENDPROC 

回答

0

数据类型不匹配的错误。例如,如果您尝试将字符串存储到整数字段中。我会仔细检查表格结构并确认它们是相同的。

要注意的另一件事是如果任何JOBACT字段类型设置为整数(AutoInc)。他们将不得不在JOBACTUPDATES表中设置为Integer。否则,您将收到“字段为只读”错误消息。

0

对于 字符字段:它们写入''马克, 数字字段:只是举例123号, 日期字段:​​ (这里也可以任选日期字段的时间。)

0

这是你的实际查询?如果是这样,您的列和值子句包含不同的字段列表的事实肯定导致此错误:

Insert Into ... 
bldate, 
jastat, 
rate, 
demand, 
received, 
balance .. 

Values ... 
jobact.bldate, 
jobact.jastat, 
jobact.rate, 
jobact.received, <-- 
jobact.balance, <-- 
jobact.transpor <--