Access查询中的“无效使用竖条”错误

时间:2013-11-24 15:27:06

标签: python ms-access pyodbc

这是我用pyodbc选择python中的

SELECT = "SELECT k.ID as id, k.Title as title, hash(k.ID || k.Title) as hash from kart as k"

我收到错误

  

ProgrammingError:('42000',“[42000] [Microsoft] [ODBC Microsoft Access Driver]在查询表达式'hash(k.ID || k.Title)'中使用垂直条无效。( - 3100)( SQLExecDirectW)“)

知道怎么解决吗?这个选择我用于我的FDB没有问题。问题必须是垂直条和哈希函数。 Access中的替代方法是什么?

2 个答案:

答案 0 :(得分:1)

如评论中所述,Access SQL中没有内置的HASH()函数。如果你需要创建一个与Firebird中HASH()函数返回的哈希值相对应的哈希值,那么你需要挖掘一些代码来自己进行计算。 here可能会有一些线索。

作为参考,双竖条(||)显然是Firebird中的字符串连接运算符。 Access SQL中的等效项是&符号(&)。

答案 1 :(得分:0)

这可能是PC设置问题。请检查separator设置。以下是导航步骤 - 控制面板 - >地区和语言 - >其他设置 - >列表分隔符 - > ,(最有可能设置为|