TWideStringField字端的Locate或Filter(200分)

  • 主题发起人 djdsz001
  • 开始时间
D

djdsz001

Unregistered / Unconfirmed
GUEST, unregistred user!
三层结构中(CORBA),中间层用的是ADO数据对象(字段太多时,BDE会出现'Record Changed by another User'的错误)在客户端将出现TWideStringField字段(数据库表的字段类型为nvarchar /MS SQL Server)则在对客户端进行Locate或Filter操作(对Twidestringfield)时,不能正确Locate到记录或Filter记录,该如何解决???
 
附加功能 将问题提前
 
说详细一点,还没看懂。
 
—)字段太多时
应该是进行了数据库操作吧!
是Insert,Edit还是 Delete之后出现的?
给你一篇Inprise的官方答案:
Question:
I have a table in a Sybase database (version 10.x or 11.x) that has a datetime field. I was able to use/edit data in this table until I applied a patch to my Sybase client (versions affected below). Now after applying the patch, whenever I attempt to update records that were written to the table with the unpatched client I get the error "record has been modified by another user". What is wrong?
Answer:
As of Open Client Version 11.1.1, CT-Lib now uses a small datetime as its default. (A small datetime keeps year, month, day, hour &
minute). This means that the 11.1.1 client will not even attempt to send second and millisecond data to the server when you post a record. If the data was written with second and millisecond precision, there is no way of reselecting it using Open Client 11.11.1. (for example 11:30:23.111do
esn't equal 11:30:00.000) In versions eariler than this (for example 11.1.0) CT-Lib used long datetime as its default. (A long datetime keeps everything a small datetimedo
es plus seconds and milliseconds). As a result, when you upgrade your Sybase client you will see this problem.
One possible workaround is to change your Update Mode to be WhereKeyOnly or WhereChanged, but if the datetime field is part of the key or you change the value of the datetime field you will still see this problem. You could also use small datetime fields when you are designing your tables and avoid this problem entirely. If you have a database which requires second and/or millisecond precision for the datetime fields, you have a few options:
1. Use Open Client 11.1.0 or 10.0.4 with CT-Lib
2. Use Open Client 11.1.1 with DB-Lib
3. Write your own implementation of second and millisecond times in another field and use it in conjunction with a short date.
If these alternatives are not acceptable to you, we encourage you to provide this feedback to Sybase Customer Service or your Sybase sales representative.
 
接受答案了.
 
顶部