2013-03-12 3 views
0

Я хотел бы использовать класс SqlCeEngine для создания базы данных и заполнения ее таблицами (like this question), но используя скрипт, сгенерированный ExportSqlCE.SQL Server CE: Генерировать БД со сценарием

Мне было интересно, если это возможно, используя SqlBulkCopy? (Версия SQL Server CE, которая была реплицирована here).

Или если есть еще одно решение для быстрого заполнения файла базы данных .sdf с таблицами и ограничениями (28 таблиц, 52 ограничений, большинство столбцов не может быть нулевым).

Когда приложение загружается, я проверяю, существует ли файл базы данных. В случае, если этот файл отсутствует (или когда программа загружается в первый раз после установки), я хочу иметь возможность повторно генерировать пустую базу данных.

Я создал базу данных, используя DataPort Console, потому что в качестве своего первого приложения для реальной базы данных я хотел графически создать базу данных.

+0

Почему бы просто не добавить пустой файл базы данных с вашим приложением и скопировать его в нужное место, если это необходимо? – ErikEJ

+0

Если файл базы данных потерян, я хочу, чтобы приложение могло поддерживать себя. –

+0

Да, мое предложение позволит вам это сделать ... – ErikEJ

ответ

1

В конечном счете, я не смог найти решение, которое реплицировало мою желаемую функциональность, и вместо этого, по рекомендации ErikEJ, было решено реализовать серию сценариев, которые будут выполняться при загрузке. ExportSqlCE по-прежнему полезен для создания скриптов уже определенного SQL Server CE database.

В конечном итоге я реализовал List<string>, в котором я добавил различные сценарии. Это позволяет мне загружать скрипты, если я хочу обновить базу данных или выбрать жестко запрограммированные «стандартные» сценарии для начальной версии базы данных. Затем я мог бы перемещать элементы списка, изменяя свойство SqlCeCommand command.CommandText на следующий элемент в списке.