Мне нужно хранилище данных для однопользовательского доступа только для чтения. Мне нужно несколько таблиц, но не связанных. Мне также нужно сделать двухколоночное индексирование. Кажется, Джет - хороший выбор. Внешний интерфейс будет либо VB, либо C#. Данные представляют собой не введенные пользователем данные, а метаданные о пользователях и внешних файлах. Каковы проблемы с развертыванием Jet — встроен ли он во все версии ОС Windows, начиная с XP? Я планирую включить базу данных Access в файл ресурсов.
Включен ли движок базы данных Jet в Windows XP, Vista и Windows7?
Ответы (6)
MS Jet 4.0/DAO 3.6 являются частью операционной системы и входят в состав Windows 2000, XP, Vista и Windows 7. Они обновляются Центром обновления Windows, и при необходимости применяются исправления безопасности.
В качестве альтернативы включению файла MDB в файл ресурсов вы можете создать его, если он отсутствует. См. страницу TempTables.MDB на моем веб-сайте, где показано, как использовать временную MDB в вашем приложении.
Вы также можете использовать утилиту Compare'Em для обновления таблиц, полей, индексов и связей файлов базы данных при обновлении приложения.
См. why-should-i-use-sqlite-over-a. -jet-database и попробуйте оба варианта.
Драйвер Microsoft Access .mdb входит в состав XP и более поздних версий. Это часть MDAC.
Кстати, для этого есть еще несколько вариантов. Посмотрите SQL Compact, VistaDB и SQLite.
Имейте в виду, что в настоящее время нет 64-битных версий движка JET, включенных в операционные системы!
Движки для 64-битной версии будут доступны в следующем Office. Бета-версию можно загрузить с сайта Microsoft Downloads< /а>
Если вы погуглите это, вы увидите, что Jet больше не является стандартной частью Windows и устарел. Драйвер ACE, который теперь является частью Office 2010, поддерживает файлы MDB, хотя Microsoft подчеркивает, что он не является заменой Jet. Вместо этого они хотят, чтобы вы использовали SQL Express.
Вы можете скачать и установить драйвер ACE отдельно, но учтите, что без веских причин вы не можете установить его 32- и 64-битные версии на одну машину. Если у вас установлен 32-разрядный пакет Office 2007, и вы пытаетесь установить 64-разрядный модуль ACE, он выдает большое диалоговое окно, в котором сообщается, что вам необходимо сначала удалить Office 2007.
Мы перешли на sqlite. Нет больше таких хлопот.
Будьте осторожны при использовании драйвера ODBC CSV. Есть ошибка, которую я обнаружил. Если вы экспортируете файл MS-Excel в формат CSV, вы получите текстовые строки с двойными кавычками, если экспортированная текстовая строка содержит встроенные в нее двойные кавычки или запятые. ПРИМЕР: «Привет, мир», это Эрик. экспортируется как """Hello World"", "Это Эрик". Однако, если вы читаете эти данные в программе с поддержкой ODBC, а затем экспортируете данные обратно, происходит следующее: драйвер CSV ODBC заключает текст в двойные кавычки независимо от того, содержит ли текст двойные кавычки и/или запятые, или нет. ОГРОМНАЯ ПРОБЛЕМА (пробуждение Microsoft Corporation) заключается в том, что вы не можете запустить СРАВНЕНИЕ ФАЙЛОВ для исходного файла, экспортированного из MS-Excel, и вновь созданного файла (прочитать, а затем вывести) из программы с поддержкой ODBC с использованием драйвера CSV. Вы всегда получите FAILED FILE COMPARE (контрольная сумма), потому что данные не равны. ЭТО ДЕЙСТВИТЕЛЬНО ИСПОЛЬЗУЕТ QA/QC. Корпорация Microsoft должна нанять одного или двух программистов ETL для предоставления консультаций. Кроме того, в АДМИНИСТРАТОРЕ ODBC СУЩЕСТВУЕТ ОГРОМНАЯ ОШИБКА, из-за которой вы не можете редактировать файлы, которые распознает/поддерживает текстовый драйвер. ЕСЛИ вы редактируете эту запись, КИТАЙСКИЕ символы сохраняются в реестре Windows. СУМАСШЕДШИЙ!!!! Но прикольно!!! способ анализа данных CSV через ODBC вместо того, чтобы писать собственный код для удаления лишних двойных кавычек.