Как определить тип базы данных? - PullRequest
1 голос
/ 29 марта 2012

Мне нужно убедиться, что база данных, к которой я подключаюсь, - это MySQL, а не PostgreSQL или Microsoft SQL Server. Как узнать, какой тип базы данных используется?

Ответы [ 3 ]

3 голосов
/ 29 марта 2012

Первой подсказкой может быть «ошибка соединения», которую вы, вероятно, получите, если попытаетесь подключиться к базе данных PostgreSQL с драйвером базы данных mySQL:)

В основном вам необходимо:

1) Кодируйте ваше приложение переносимым способом (не используйте расширения MSSQL в запросе, который может быть запущен, например, на mySql)

2) Выберите API переносимого драйвера (например, JDBC, ODBC, ADO.Net и т. Д.)

3) Предоставьте вашему приложению некоторый механизм для запроса фактического типа базы данных во время выполнения (например, файла свойств .config)

4) Проверьте завершенныйприложение против каждого из поддерживаемых типов баз данных.

'Надеюсь, что помогает .. PSM

1 голос
/ 29 марта 2012

Судя по вашим комментариям, у вас есть SQL-подобный интерфейс CLI или вы можете выполнять только SQL-запросы, и вы хотите знать, является ли это mysql-сервер, отвечающий на ваши запросы.

Вы можете использовать

SELECT @@version_comment

, который возвращает что-то вроде MySQL Community Server, если это сервер MySQL

0 голосов
/ 29 марта 2012

Вы можете проверить запущенный процесс базы данных на хосте, к которому вы пытаетесь подключиться.

Пример: ps -ef |grep mysql

...