Первое, на что следует обратить внимание, это то, что база данных объектов Zope (ZODB) хранит объекты Python в своей иерархии. Следовательно, извлечение «данных» из ZODB обычно не имеет смысла вне языка Python. Так что в некоторой степени это действительно зависит от типа данных, которые вы хотите получить.
Если данные, которые вы ищете, представляют собой файлы (такие как HTML, документы и т. Д.), Вы можете установить сервер Zope, включить что-то вроде WebDAV или FTP и извлечь файлы таким образом.
Однако, как вы описали это, я подозреваю, что данные, которые вы ищете, являются более детализированными элементами данных (такими как числа или счета или что-то подобное). В этом случае вам почти наверняка понадобится какой-нибудь Python для извлечения данных и их преобразования в какой-либо формат, подходящий для импорта в SQL Server. Возможно, вам удастся остаться в мире .NET с помощью IronPython, но, если честно, я бы этого не допустил, если вы не найдете доказательств того, что IronPython работает с библиотекой ZODB.
Вместо этого я предлагаю сделать копию вашей установки Zope и экземпляра zope (чтобы вы не ломали работающую систему), а затем использовать версию Python, используемую Zope (часто устанавливаемую вместе), для монтирования базы данных, и манипулировать им в подходящий формат. Вы могли бы даже использовать что-то вроде PyODBC для подключения к базе данных SQL Server для ввода данных - или вы можете делать пунт, экспортировать в какой-либо формат файла и использовать инструменты, с которыми вы более знакомы, для импорта данных.
Прошло много времени с тех пор, как я взаимодействовал с ZODB, но я помню, эта статья помогла мне взаимодействовать с ZODB и понять его структуру.
Удачи!