我使用以下查询通过JDBC从.mdb文件中检索数据,但是当我在.odb文件上尝试它时,它不会抛出任何异常,但根本没有结果。我想知道.odb是否区分大小写.mdb不存在或者我还缺少什么?
“SELECT DISTINCT column-one +':'+ column-two As ResultColumn FROM datatable;”
如何创建一个适用于这两种文件类型的语句?
答案 0 :(得分:1)
它们会有所不同,因为它们是两个不同公司编写的两个不同的产品,程序员对如何处理事物做出了不同的选择。
您是否尝试过使用指定的列别名,或许比Expr1000更具描述性?
SELECT DISTINCT column-one + ":" + column-two As Expr1000 FROM datatable
这就是我在SQL Server中编写它的方法,检查你的数据库以查看它是否可行。
答案 1 :(得分:1)
一些建议:
1)尝试使用单引号代替双引号,例如
SELECT DISTINCT column-one + ':' + column-two As ResultColumn FROM datatable;
2)也许.odb源的SQL语法处理串联不同,例如使用.mdb,'+'NULL
将传播,这意味着如果列的值中至少有一个是NULL
,则结果将为NULL; '&'连接符号将忽略NULL
个值,例如这在.mdb土地
SELECT DISTINCT column-one & ':' & column-two As ResultColumn FROM datatable;
与标准ANSI / ISO SQL-92(在.mdb土地中不受支持)相当。
SELECT DISTINCT COALESCE(column-one, '') + ':' + COALESCE(column-two, '') As ResultColumn FROM datatable;
3)如果两个源不支持相同的语法,您是否可以使用.mdb的链接表功能链接.mdb中的.odb源表中的表,并仅使用.mdb中的SQL代码。 MDB?