SQL Server的逻辑列

我曾经使用下面的SQL语句设置逻辑列的值:

UPDATE {表A} SET 结账 = False

在使用内部表和Access数据源的时候,上述SQL语句均能正常执行,当转为SQl Server的时候,却出现了错误提示。

这是因为SQL Server用0表示False,1表示True,所以上述语句应该改为:

UPDATE {表A} SET 结账 = 0

同样在使用条件表达式的时候,也要做适当的调整,例如:

Select * From {表A} Where 结账 = 1

表示获得已经结账的行。

需要注意的是,SQL Server这种特性只有在使用SQL语句的时候才存在,数据一旦加载到Foxtable,不管数据来自何种数据源,逻辑列的值都是False和True,不再是0和1。


本页地址:http://www.foxtable.com/webhelp/topics/2045.htm