【问题标题】:How to detect MS Access database or SQL Server Compact Edition (MSSQL CE) by a query?如何通过查询检测 MS Access 数据库或 SQL Server Compact Edition (MSSQL CE)?
【发布时间】:2012-09-12 18:02:05
【问题描述】:

我需要通过查询检测 MS Access 数据库或 SQL Server Compact Edition (MSSQL CE)。 如果我正在查询 Access 或 Compact Edition,我必须能够通过查询结果知道。该应用程序有时从 Windows Mobile 运行并使用 SQL Server Compact Edition,有时在桌面上使用 MS Access 运行。

我已经知道我可以通过读取数据库文件的第一个字节来检测 SQL Server Compact Edition 版本,如 herehere too 所述

我也知道我可以检测到 SQL 2005 或 2008 的服务器版本,如 also here 所解释的那样

我也知道我可以检查 Windows 注册表并查找特定密钥。

这些选项都不适合我,因为我是从运行在 Windows Mobile 中的应用程序执行查询。

注意:很遗憾,我无法执行 shell 命令或从应用程序调用外部应用程序。

非常欢迎任何建议。

【问题讨论】:

  • 应用程序是用什么语言编写的,您从哪里执行查询来解决这个问题?
  • 这是一个专有脚本,在 Windows mobile 中运行来自应用程序的查询。
  • 确定您在哪个操作系统上运行不是更容易吗,因为这是使用数据库类型的方式?

标签: sql ms-access sql-server-ce


【解决方案1】:

尝试调用

select @@version

SQL 服务器将返回一个值。 访问会返回错误

【讨论】:

  • 这不适用于 SQL Server Compact,但使用“SELECT * FROM INFORMATION_SCHEMA.TABLES”可以。
猜你喜欢
  • 1970-01-01
  • 2010-09-26
  • 1970-01-01
  • 1970-01-01
  • 2010-12-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多