Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Базы данных под .NET > Создание БД SqlServer CE на основе DataSet |
Автор: mongoloid 5.6.2011, 14:14 |
Други, вот такая проблема: необходимо создать БД SQL Server Compact и заполнить ее посредством DataSet. Создать пустую БД не проблема, делаю так: ............. string connString = "Data Source='Test.sdf'; LCID=1033; Password=; Encrypt = FALSE;"; SqlCeConnection connection = new SqlCeConnection(); ............. SqlCeEngine engine = new SqlCeEngine(connString); engine.CreateDatabase(); // БД создана ............. Теперь нужно заполнить БД таблицами и связями. Можно делать так: ............. // открываем соединение connection.ConnectionString = connString; connection.Open(); SqlCeCommand command = connection.CreateCommand(); command.CommandText = "CREATE TABLE Empty (IdEmpty int IDENTITY (0,1) PRIMARY KEY)"; int res = command.ExecuteNonQuery(); connection.Close(); ............. А хочется сделать по-другому: создать пустую БД (так как указано выше, например), создать DataSet, заполнить DataSet таблицами и связями между ними и "выгрузить" DataSet целиком (с таблицами, данными и связями в ) в созданную пустую БД. Как это сделать? Замечу, что проблема не в том, чтобы создавать таблицы и связи в DataSet, а именно в корректной "выгрузке" заполненной DataSet в пустую БД. Спасибо. [вот здесь http://tdlite.ru/csharp/createsqlitedb/ написано, что "это невозможно". Неужели действительно невозможно?] |
Автор: jorikdima 7.6.2011, 09:54 |
Это просто моя наиактуальнейшая проблема! Надеюсь кто-то ответит! Я пока сделал заполенение БД таблицами вручную. Но так хотелось бы автоматизировать это, имея типизированный DataSet. |
Автор: mongoloid 7.6.2011, 10:06 |
Есть мнение, что это все-таки "невозможно". "Поправленный" ДатаСет можно выгрузить в БД посредством SqlCeCommand. Но вот таблицы создать таким образом не получается. Только править уже существующие. Еще мнения будут? |