是你的程序中在设计期间生成了永久字段对象,而这个字段对象的类型与数据库中字段类型不同;
比如你原来的字段是Integer类型,生成的永久字段是TIntegerField,但是你手工改了数据库的字段,
将其改成String类型,而程序中的这个字段对象又没有改,所以出现错误,你可以:
1、在程序中找到这个永久性字段,删除,再重新生成;
2、在字段对象所在的单元只找到这个字段,把它的类型改成TStringField,
然后显示Form(如果出现Delphi提示一定要按Cancel),在Form上单击右键,View as text菜单,
在显示出来的dfm文件中找到这个字段,把它的类型改成TStringField,并把部份属于TIntegerField类
而不属于TStringField类的属性及值删除(可参考其他TStringField对象的属性),再单击右键View as form,
再编译,应该问题解决。
强列建议改dfm文件前先备份。