烂
烂泥
Unregistered / Unconfirmed
GUEST, unregistred user!
原来的提问
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1157547
[
SQL=server 7.0 + delphi 6.0
其中一个表使用了image 字段,
在程序中 用table.append(); 结果弹出
“Non-blob column in table required to perform operation” 错误,
在edit的时候,更新字段却没有问题。
]
找到的相关资料,已解决了问题 希望对大家有些帮助
Non-Blob column in table required to perform operation with MSSQL - by Borland Developer Support Staff
Abstract:Non-Blob column in table required to perform operation with MSSQL
Question and Answer Database
FAQ4274B.txt - Non-Blob column in table required to perform operation
Category atabase (MSSQL)
Platform :32 Bit
Product :BC++5.x, C++Builder1.0, C++Builder3.x, C++Builder4.x, Delphi2.x, Delphi3.x, Delphi4.x, Delphi 5.x
Question:
How come I'm getting the error
"Non Blob column in table required to perform operation" when posting to my MSSQL database?
Answer:
There are two conditions where this error occurs:
1。You have an identity field and a field that is NOT NULL (required) and you post a record.
With BDE versions prior 5.10, all you can do is ignore the error and continue. The problem is resolved simply by getting BDE 5.10.
2。You have an identity field which is the primary key and a key field, you have a text field, and you post a record.
With BDE versions prior 5.10, all you can do is ignore the error and continue. If you have BDE 5.10 and Delphi, you can turn on the AutoRefresh property of your DataSet to resolve the problem.
If you have BDE 5.10 and development system other than Delphi 5, you can call DbiSetProp and set curAUTOREFETCH (which is equal to 0x00050017) to true.
C++ Builder Example:
#include "bde.hpp"
#define curAUTOREFETCH 0x00050017;
Table1->Open();
DbiSetProp(Table1->Handle, curAUTOREFETCH, TRUE);
Delphi version other than 5 example:
uses bde;
const
curAUTOREFETCH = $00050017;
...
Table1.Open;
DbiSetProp(hDbiObj(Table1.Handle), curAUTOREFETCH, Longint(TRUE))
11/16/99
来自borland 的解决办法,我试了第一中没搞定,可能是我自己的问题,不过我按第二种
办法解决,希望对遇到同样问题的有些帮助
===
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1157547
[
SQL=server 7.0 + delphi 6.0
其中一个表使用了image 字段,
在程序中 用table.append(); 结果弹出
“Non-blob column in table required to perform operation” 错误,
在edit的时候,更新字段却没有问题。
]
找到的相关资料,已解决了问题 希望对大家有些帮助
Non-Blob column in table required to perform operation with MSSQL - by Borland Developer Support Staff
Abstract:Non-Blob column in table required to perform operation with MSSQL
Question and Answer Database
FAQ4274B.txt - Non-Blob column in table required to perform operation
Category atabase (MSSQL)
Platform :32 Bit
Product :BC++5.x, C++Builder1.0, C++Builder3.x, C++Builder4.x, Delphi2.x, Delphi3.x, Delphi4.x, Delphi 5.x
Question:
How come I'm getting the error
"Non Blob column in table required to perform operation" when posting to my MSSQL database?
Answer:
There are two conditions where this error occurs:
1。You have an identity field and a field that is NOT NULL (required) and you post a record.
With BDE versions prior 5.10, all you can do is ignore the error and continue. The problem is resolved simply by getting BDE 5.10.
2。You have an identity field which is the primary key and a key field, you have a text field, and you post a record.
With BDE versions prior 5.10, all you can do is ignore the error and continue. If you have BDE 5.10 and Delphi, you can turn on the AutoRefresh property of your DataSet to resolve the problem.
If you have BDE 5.10 and development system other than Delphi 5, you can call DbiSetProp and set curAUTOREFETCH (which is equal to 0x00050017) to true.
C++ Builder Example:
#include "bde.hpp"
#define curAUTOREFETCH 0x00050017;
Table1->Open();
DbiSetProp(Table1->Handle, curAUTOREFETCH, TRUE);
Delphi version other than 5 example:
uses bde;
const
curAUTOREFETCH = $00050017;
...
Table1.Open;
DbiSetProp(hDbiObj(Table1.Handle), curAUTOREFETCH, Longint(TRUE))
11/16/99
来自borland 的解决办法,我试了第一中没搞定,可能是我自己的问题,不过我按第二种
办法解决,希望对遇到同样问题的有些帮助
===