MSSql или оболочка SQL Server для пользовательского модуля?
Я пишу пользовательский модуль, и мне нужно получить доступ к данным, которые в настоящее время хранятся в базе данных MSSql. Было бы здорово, если бы я мог использовать встроенный уровень абстракции базы данных, но, очевидно, это невозможно.
Существуют ли какие-либо модули или ресурсы, которые обеспечивают аналогичный уровень абстракции для MSSql?
Если нет, то как бы я написал свой собственный? Кажется, я очень плохо себя чувствую из-за того, что просто помещаю строки подключения и запроса непосредственно в модуль такой... устаревший.
2 answers
Поскольку вы не указали версию Drupal, я постараюсь ответить как за Drupal 6, так и за 7.
Drupal 7
См. http://drupal.org/project/sqlsrv
Drupal 6
Даже если бы в официальном db-api была интеграция с SQL Server, это не сильно помогло бы вам, потому что с Drupal 6 вы можете подключаться только к нескольким базам данных одного и того же типа. Вот почему https://github.com/dereine/views_pgsql был создан, например.
Однако, это возможно, можно использовать проект DBTNG, который является обратным портом нового уровня абстракции базы данных Drupal 7, и использовать его в сочетании с проектом sqlsrv. Я не проверял это, но это может сработать. А если нет, возможно, с некоторыми изменениями (которые вы могли бы внести обратно)
Модуль Forena является еще одной альтернативой для рассмотрения. Его можно использовать для запроса (не обновления) любой базы данных MS SQL. Для получения более подробной информации о Forena доступны 2 вида документации:
- Документация сообщества.
-
Документация, прилагаемая к Forena, к которой вы можете получить доступ сразу после установки и включения модуля. Проверьте демонстрационный сайт для онлайн-примера текущего:
- Для документации - используйте ссылку "Отчетная документация" или посетите соответствующую ссылку /отчеты/справка.
- Для образцов - используйте ссылку "Образцы отчетов" или посетите относительную ссылку /отчеты/образцы (эти образцы полностью функциональны, поэтому не забудьте немного поэкспериментировать с ними, например, с детализацией, доступной в образце графика SVG).
Новейшая версия 7.x-4.x также включает удивительный (я думаю) пользовательский интерфейс для создания ваших отчетов (редактор отчетов WYSIWYG) и/или для создание ваших SQL-запросов (конструктор запросов).
Вот некоторые варианты части базы данных MS SQL в вопросах:
- Использование SQLite вместо базы данных MySQL: образцы Forena фактически отправляются, включая (крошечную) базу данных SQLite. Проверьте это на демонстрационном сайте : данные, показанные там, являются данными, содержащимися в sampledb, который находится в формате SQLite.
- Forena поставляется с полным набором поддерживаемых баз данных соединения... такие как MySQL, MS SQL, Oracle, Postgress или любой вариант, совместимый с PDO.
Достаточно ли причин для того, чтобы подумать о том, чтобы дать Форене попробовать? При этом используйте очередь выдачи для любых запросов на поддержку/документы, которые у вас могут возникнуть.
Имейте в виду: я являюсь соавтором Forena.