我正在将一个jet数据库迁移到ms-sql,该应用程序已经建立并包含数万行代码,可能超过10万行代码。
当使用adodb记录集(在vb.net中)查询jet数据库并连接具有相同名称列的表(选择a.foo,b.foo)时,会返回具有这些字段的TableName.Column同名。
但是当查询一个sql server(MS SQL)时,你只得到ColumnNames,所以如果你有两个表a和b,并且每个表都有一个名为foo的列,你会得到两个名为“foo”的列,其中jet数据库你得到a.foo和b.foo
我完全清楚你可以在select语句中使用“as”来为列名添加别名(选择a.foo为a_foo,b.foo为b_foo)但是 我不想这样做 - 我没有时间浏览应用中的一千个选择语句。
所以我问是否有人知道SQL可以像jet数据库一样运行的方式,并为类似名称的字段返回TableName.ColumnName
,
或者如果有人确定mssql只能返回没有TableName的ColumnName,那么哪个数据库引擎可以执行Jet数据库的操作?
顺便说一下,Jet数据库只在使用直接连接字符串语法时才会这样做,否则如果通过ODBC访问数据,它的行为方式与SQL Server相同。