Как узнать тип базы данных (MS_SQL или My_SQL) ?
Использую sqlConnection.
Есть несколько подключений. Одни к MySQL, другие к MsSQL.
Можно ли как-то определить, какая это база данных?
Смысл в том, что структура базы одинаковая на разных серверах. Но запросы к Ms и My нужно писать иногда по-разному (хотя пытаюсь писать универсальные). Соответственно нужно узнать что за БД и использовать соответствующий запрос.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Как узнать список SQL серверов и базы данных?
Я пишу прогу которая работаем с SQL сервером. Мне надо чтобы пользователь выбирал нужный ему сервер.
Как узнать имя базы данных и сервер базы данных?
База данных находится на локальной машине
Как сделать тип данных или уже есть такой тип данных который состоит из всех печатыемых символов?
Как сделать тип данных или уже есть такой тип данных который состоит из всех печатыемых символов.
Как сравнить переменную со строкой базы данных или как присвоить переменной значение строки базы данных ?
подскажите пожалуйста как мне сравнить переменную типа string с каким нибудь строкой базы данных.
Как узнать тип базы данных
Как быть, если вы забыли имя базы или таблицы, или структуру какой-либо из таблиц (например имена столбцов)? В MySQL эта проблема решается при помощи нескольких команд, выводящих информацию о базе данных и содержащихся в ней таблицах.
Вы уже познакомились с командой SHOW DATABASES , выводящей список управляемых сервером баз данных. Определить, какая из них выбрана в данный момент, можно с помощью функции DATABASE() :
mysql> SELECT DATABASE(); +------------+ | DATABASE() | +------------+ | menagerie | +------------+
Если ни одна из баз не выбрана, результат будет пуст.
Выяснить, какие таблицы содержит текущая база данных (что необходимо, если, например, никак не получается вспомнить имя нужной таблицы), можно при помощи следующей команды:
mysql> SHOW TABLES; +---------------------+ | Tables in menagerie | +---------------------+ | event | | pet | +---------------------+
Узнать структуру таблицы можно при помощи команды DESCRIBE , которая выводит информацию о каждом из столбцов таблицы:
mysql> DESCRIBE pet; +---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | name | varchar(20) | YES | | NULL | | | owner | varchar(20) | YES | | NULL | | | species | varchar(20) | YES | | NULL | | | sex | char(1) | YES | | NULL | | | birth | date | YES | | NULL | | | death | date | YES | | NULL | | +---------+-------------+------+-----+---------+-------+
Field — имя столбца, Type — тип данных, к которому относится этот столбец, NULL указывает, может ли данный столбец содержать значения NULL , Key — является ли этот столбец индексным, и, наконец, Default указывает значение данного столбца по умолчанию.
Если для таблицы созданы индексы, информацию о них можно получить с помощью команды SHOW INDEX FROM tbl_name .
Помогите определить тип базы данных
Имеется база данных со следующей файловой структурой:
Хабравчане, помогите определить тип базы данных.
Чем её можно открыть?
- Вопрос задан более трёх лет назад
- 5290 просмотров
4 комментария
Оценить 4 комментария
Если данные там не конфидициальные, можно ли залить на файлообменник?
Иван Дудин @Vankod Автор вопроса
Данные не для свободного доступа. Платная статистика. Используется в комплексе со своим программным решением, в спецификации которого не указан тип БД.
Сейчас встала задача вывести данные в таком виде, в каком родное приложение не способно.
ИМХО, хотя бы первые 500 байт с каждого файла не нарушат «конфиденциальности» но покажут заголовки. Это может быть любая бд, которая поддерживает свободное именование файлов. Размеры файлов тоже было бы хорошо знать. Где индексы, где данные, где словарь.
Иван Дудин @Vankod Автор вопроса
Размеры файлов:
Единственно полезный кусок из data.srv:
VAR =Variables definitions
DAT =Flat data
CSS =Classes definitions
DIA =Diaries
DXX =Diary schema
VMM =Logical schema
TMM =Transposed schema
FMM =Flat schema
TXX =Transposed data
CDT =Media data
CMM =Classes schema
UMM =User variables schema
CFG=CFG
;—————————————————————————-
[Accessors]
DACTRAN =TMM, TXX, Transposed data accessor
DACFLAT =FMM, DAT, Flat data accessor
Подскажите, чем можно попытаться открыть другие файлы, чтобы прочитать заголовки?
Как проверить тип системы хранения MySQL на Linux и Windows
Используются две основные системы хранения MySQL: MyISAM и Innodb. MyISAM является не транзакционной, и, следовательно, может быть быстрее для чтения, в то время как InnoDB полностью поддерживает транзакции (например, совершение/откат) с блокировкой отдельных элементов. Когда вы создаёте новую таблицу MySQL вы выбираете её тип (так называемую систему хранения, движок базы данных). Если вы не делаете выбор, то вы просто будете использовать движок, который в конфигурации указан как дефолтный.
Если вы хотите узнать тип существующей таблицы базы данных MySQL, есть несколько способов сделать это.
Метод первый
Если у вас есть доступ в phpMyAdmin, мы можете узнать тип баз данных из него. Просто выберите базу данных из phpMyAdmin, чтобы видеть список её таблиц. В колонке «Тип» вы увидите тип базы данных для каждой таблицы.
Метод второй
Если вы можете напрямую авторизоваться на сервере MySQL, другой способ выяснить систему хранения — это запустить следующую MySQL команду внутри вашего MySQL сервера после авторизации.
mysql> SELECT ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'my_database' AND TABLE_NAME = 'my_table';
Эта команда покажет тип системы хранения таблицы под названием ‘my_table’ в базе данных ‘my_database’.
‘my_database’ — название базы данных, в которой находится интересующая вас таблица
‘my_table’ — название интересующей вас таблицы
Метод третий
И ещё один метод проверить движок MySQL, это использование mysqlshow (утилиты командной строки, которая показывает информацию о базе данных). mysqlshow поставляется вместе с установкой клиентского пакета MySQL. Для использования mysqlshow вы должны войти в MySQL сервер со своим логином.
Эта команда отобразит информацию о конкретной базе данных. В колонке «Engine» вы увидите систему хранения для каждой таблицы.
$ mysqlshow -u -p -i
Узнать тип системы хранения MySQL на Windows
Все вышеописанные методы применимы и для Windows. Небольшая коррекция есть только для третьего способа. Файл имеет имя mysqlshow.exe и, скорее всего, придётся прописывать полный путь до него. Например, я вызываю его таким образом:
C:Serverbinmysql-5.6binmysqlshow.exe -u root -p -i db_wordpress
Оставить ответ Отменить ответ
С 20 по 22 апреля пройдут незабываемые битвы среди кибер-гладиаторов в мире информационной безопасности!
Открыта регистрация команд по ссылке .