【发布时间】:2012-04-12 14:34:57
【问题描述】:
我需要确定我要连接的数据库是 MySQL 而不是 PostgreSQL 或 Microsoft SQL Server。我怎样才能知道正在使用哪种类型的数据库。
【问题讨论】:
-
你是如何连接到数据库的?
我需要确定我要连接的数据库是 MySQL 而不是 PostgreSQL 或 Microsoft SQL Server。我怎样才能知道正在使用哪种类型的数据库。
【问题讨论】:
如果您尝试使用 mySQL 数据库驱动程序连接到 PostgreSQL 数据库,第一个提示可能是“连接错误”:)
基本上,您需要:
1) 以可移植的方式编写您的应用程序(例如,不要在可能在 mySql 上运行的查询中使用 MSSQL 扩展)
2) 选择可移植的驱动 API(如 JDBC、ODBC、ADO.Net 等)
3) 为您的应用程序提供一些在运行时查询实际数据库类型的机制(例如,.config 属性文件)
4) 针对每种受支持的数据库类型测试您已完成的应用程序。
'希望有帮助.. PSM
【讨论】:
您可以检查您尝试连接的主机上正在运行的数据库进程。
示例: ps -ef | grep mysql
【讨论】:
从你的 cmets 来看,你有一个类似 SQL CLI 的界面,或者你只能执行 SQL 查询,你想知道它是否是一个 mysql 服务器来回答你的查询。
你可以使用
SELECT @@version_comment
如果是 MySQL 服务器,它将返回类似 MySQL Community Server 的内容
【讨论】:
不,伙计!可以在不知道数据库类型的情况下连接到数据库。例如。我正在为一家名为 xactly 的供应商工作。他们的数据库链接为 xactly..com,jdbc 为 xactly.jdbc.com。我可以使用驱动程序很好地连接到实例,但我仍在尝试查找数据库类型
【讨论】: