Как связать компактную версию базы данных sql на visual studio 2008 с vb.net (умное устройство)
Я делаю проект с vb.net (смарт-устройство) на Visual Studio 2008, и мне нужно подключиться к базе данных на самом устройстве (у меня нет физического устройства для тестирования, только эмуляция). Как мне это сделать? Я хотел бы, чтобы база данных была в устройстве при запуске.
Я прочитал в Интернете, что вы должны сделать ссылку на System.Data.SqlServerCe, но документы, на мой взгляд, расплывчаты. Итак, я здесь довольно заблудился.
1 ответ
Итак, здесь есть два вопроса:
- Как развернуть базу данных, чтобы она была там, когда мое приложение запускается?
- Как мне получить доступ к этой базе данных из моего приложения?
Оба просты.
A1. У вас есть пара вариантов. Во-первых, следует понимать, что базы данных SQLCE представляют собой один файл, обычно с SDF
расширение. Вы можете либо упаковать его в свое приложение для развертывания, чтобы вы знали, что он будет там при первом запуске, либо ваше приложение может проверить его наличие при запуске и создать файл, если его там нет. Если вам нужно заполнить исходную базу данных данными (поисками и т. Д.), То вариант 1, вероятно, лучше. Пока вы развертываете / создаете базу данных в постоянном хранилище (и под WinMo/Pocket PC, которое почти везде), оно всегда будет там, когда ваше приложение запускается.
A2 Вы правы, что вам нужно добавить ссылку на System.Data.SqlServerCe
, что опять же просто. Просто добавьте ссылку в ваш проект смарт-устройства:
Как только вы это сделаете, вы используете объекты пространства имен SqlServerCe для создания базы данных, таблиц, индексов и т. Д., Вставки и запроса данных, и всего такого хорошего. Учебники 2 и 3 по MSDN здесь - действительно хорошее начало, и в них есть примеры VB.NET. Приятно то, что большинство настольных примеров для доступа VB.NET к базе данных SQLCE будут работать на устройстве как есть, а то, что не работает, обычно заключается в представлении данных, а не в самом коде доступа к базе данных.