Необходимо учитывать три вещи: объект ISession, сгенерированные запросы SQL и ваши простые старые объекты clr, которые отображаются в таблицы.
NHiberante сгенерирует требуемые SQL-запросы на основе выбранного диалекта базы данных. Если вы сконфигурируете NHibernate для использования диалекта SQL Server, он будет генерировать правильные SQL-операторы SQL-сервера. Это можно легко настроить динамически во время выполнения в зависимости от конфигурации.
Вам также необходимо настроить сеанс для подключения к нужному типу базы данных. Опять же, различные методы конфигурации могут поддерживать динамическое создание ISession во время выполнения.
Ваши фактические объекты данных, которые сопоставляются с таблицами, не должны изменяться в зависимости от выбора базы данных. Одним из преимуществ NHibernates является гибкость, которую он обеспечивает в поддержке нескольких баз данных посредством (достаточно) простого изменения конфигурации и некоторых предварительных архитектурных решений.
См. http://codebetter.com/blogs/karlseguin/archive/2009/03/30/using-nhibernate-with-multiple-databases.aspx, где приведены некоторые примеры того, как можно абстрагировать базовую базу данных от создания и использования NHibernate.