因为你的数据库字段长呀为char(20)
解决方案 »
- delphi 创建ocx以后,想让ocx再创即一个窗体到IE
- VclSkin皮肤的问题
- 怎么将一段内存快速保存为磁盘文件?z
- 急呀!union问题,高手指点,谢谢!
- 请教高手:怎么用POP3命令检测邮箱里面是否有新邮件?
- 编写过dll文件的请帮助!
- $$$$$$$$中科慧创软件公司招Delphi程序员(成都工作)$$$$$$$$$$$$$$
- 咋么在Form里画图,比如画关于数学坐标的!
- 救命啊!!:一个动态库中有运行时包,为什么重载动态库时就会出错?(有点难的。。)
- 如何判断 string1 是否在 string2 里。
- 如何在数据库应用程序运行时获得系统当前时间?
- 怎样在Delphi环境下调用一个具有窗体的DLL文件
肯定是沒有修改掉
你的賦值語句是不是直接把Edit1.Text賦過去的呢?
有沒有中間變量
FieldByName('key').AsString := edit_key.Text;to tong_jin:已经按你的方法做过,但是无效。:(to zyj320621:没有加入TField定义。
你跟蹤到這個地方,看看 edit_key.Text是多少
FieldByName('key').AsString := edit_key.Text;
執行完這句後,再看看
QUERY1.FieldByName('key').AsString 為多少(不知道你是不是QUERY1)
edit_key的内容是正常的,五十个字符,
但是保存后取表中的内容是截断的,只有二十个字符。
char(100)
这里人挺多的呀,有没有人对SAPI了解呢,小弟对SDK51不太懂,关于如何操作ACTIVEVOICEPROJECTLib_TLB中的过程,请高手指教
我查了一下,table控件中的FieldDefs属性中,选中key字段后,将datatype 随意改一下,再恢复成fstring,屏幕上r size属性处显示的是“20”,!!!,为什么?后台的确改成了50呀!问题不在于edit处,而是数据库字段的长度更改后,尤其是加长后,前端数据库控件的更新如何同步?
如果你要输入50个汉字,就在数据库里
char(100)
我刚测试过,窗体上有如下控件:ADOConnection1、ADOTable1、DataSource1、DBEdit1,其他不要多说,双击ADOTable1选ADDALLFIELDS,比如有字段长为10,DBEdit1字段设置为该字段,运行只能输入10
双击ADOTable1,删除该字段,再ADD FIELD,重新加入,运行工程就可改变过来,OK?ANY MORE?
手工改成50后,前端的50个字符照旧截成20个字符。
在FieldDefs属性中将这个字段删除,然后在添加一遍,就会改过来了
还是不中啊!
to jyqkr:先删除KEY,再重新添加KEY的SIZE处还显示的是“20”
to shsunb:edit没有问题的,showmessage显示的是50个字符串。
有别的talbe控件呀。
试了一下,新建一个工程,KEY的size是50了,看来要解决这个问题,非要把table控件删了,重新建不可,表里还建了查找字段呢。唉!有没有更好的方法解决呀?size的20究竟存到哪了?这个pascal,真让我搞不懂。
我将table控件删除后重建已经解决问题了。
可惜的是,除了这个笨方法,还未发现有新的简单一些方法。(fielddef删掉再重建不起作用:)foreveryday007,goldvale: 感谢你们的回答给了我另外的灵感!感谢诸位!下午有事,稍后散分!