Читаем Программирование мобильных устройств на платформе .NET Compact Framework полностью

'------------------------------------------

Public Shared Sub CreateDatabaseIfNonExistant

 If (System.IO.File.Exists(DATABASE_NAME) = False) Then

  CreateAndFillDatabase

 End If

End Sub


'---------------------------------------

'Создает и наполняет данными базу данных

'---------------------------------------

Public Shared Sub CreateAndFillDatabase

 'Удалить базу данных, если она уже существует

 If (System.IO.File.Exists(DATABASE_NAME)) Then

  System.IO.File.Delete(DATABASE_NAME)

 End If

 'Создать новую базу данных

 Dim sqlCeEngine As System.Data.SqlServerCe.SqlCeEngine

 sqlCeEngine = New System.Data.SqlServerCe.SqlCeEngine( _

  CONNECT_STRING)

 sqlCeEngine.CreateDatabase


 '-------------------------------------

 'Попытаться подключиться к базе данных

 'и наполнить ее данными

 '-------------------------------------

 Dim conn As System.Data.SqlServerCe.SqlCeConnection = Nothing

 Try

  conn = New System.Data.SqlServerCe.SqlCeConnection( _

   CONNECT_STRING)

  conn.Open

  Dim cmd As System.Data.SqlServerCe.SqlCeCommand = _

   conn.CreateCommand


  'Создает таблицу перевода

  'Поля:

  ' 1. Слова на английском языке (English)

  ' 2. Слова на немецком языке (German)

  ' 3. Грамматический род (Gender)

  ' 4. Тип слова

  cmd.CommandText = "CREATE TABLE " + TRANSLATIONTABLE_NAME _

   + " (" + _

   TRANSLATIONTABLE_ENGLISH_COLUMN + " ntext" + ", " + _

   TRANSLATIONTABLE_GERMAN COLUMN + " ntext" + ", " + _

   TRANSLATIONTABLE_GERMANGENDER_COLUMN + " int" + ", " + _

   TRANSLATIONTABLE_WORDFUNCTION_COLUMN + " int" + ")"

  cmd.ExecuteNonQuery


  'Наполнить базу данных словами

  FillDictionary(cmd)

 Catch eTableCreate As System.Exception

  MsgBox("Error occured adding table :" + eTableCreate.ToString)

 Finally

  'Всегда закрывать базу данных по окончании работы

  conn.Close

 End Try


 'Информировать пользователя о создании базы данных

 MsgBox("Created language database!")

End Sub


Private Shared Sub FillDictionary( _

 ByVal cmd As System.Data.SqlServerCe.SqlCeCommand)

 'Глаголы

 InsertEnglishGermanWordPair(cmd, "to pay", "zahlen", _

  VocabularyWord.WordGender.notApplicable, _

  VocabularyWord.WordFunction.Verb)

 InsertEnglishGermanWordPair(cmd, "to catch", "fangen", _

  VocabularyWord.WordGender.notApplicable, _

  VocabularyWord.WordFunction.Verb)

 'Добавить другие слова.


 'Местоимения

 InsertEnglishGermanWordPair(cmd, "What", "was", _

  VocabularyWord.WordGender.notApplicable, _

  VocabularyWord.WordFunction.Pronoun)

 'Добавить другие слова.


 'Наречия

 InsertEnglishGermanWordPair(cmd, "where", "wo", _

  VocabularyWord.WordGender.notApplicable, _

  VocabularyWord.WordFunction.Adverb)

 InsertEnglishGermanWordPair(cmd, "never", "nie", _

Перейти на страницу:

Похожие книги

Программист-прагматик. Путь от подмастерья к мастеру
Программист-прагматик. Путь от подмастерья к мастеру

Находясь на переднем крае программирования, книга "Программист-прагматик. Путь от подмастерья к мастеру" абстрагируется от всевозрастающей специализации и технических тонкостей разработки программ на современном уровне, чтобы исследовать суть процесса – требования к работоспособной и поддерживаемой программе, приводящей пользователей в восторг. Книга охватывает различные темы – от личной ответственности и карьерного роста до архитектурных методик, придающих программам гибкость и простоту в адаптации и повторном использовании.Прочитав эту книгу, вы научитесь:Бороться с недостатками программного обеспечения;Избегать ловушек, связанных с дублированием знания;Создавать гибкие, динамичные и адаптируемые программы;Избегать программирования в расчете на совпадение;Защищать вашу программу при помощи контрактов, утверждений и исключений;Собирать реальные требования;Осуществлять безжалостное и эффективное тестирование;Приводить в восторг ваших пользователей;Формировать команды из программистов-прагматиков и с помощью автоматизации делать ваши разработки более точными.

Эндрю Хант , Дэвид Томас , А. Алексашин

Программирование / Книги по IT
Разработка ядра Linux
Разработка ядра Linux

В книге детально рассмотрены основные подсистемы и функции ядер Linux серии 2.6, включая особенности построения, реализации и соответствующие программны интерфейсы. Рассмотренные вопросы включают: планирование выполнения процессов, управление временем и таймеры ядра, интерфейс системных вызовов, особенности адресации и управления памятью, страничный кэш, подсистему VFS, механизмы синхронизации, проблемы переносимости и особенности отладки. Автор книги является разработчиком основных подсистем ядра Linux. Ядро рассматривается как с теоретической, так и с прикладной точек зрения, что может привлечь читателей различными интересами и потребностями.Книга может быть рекомендована как начинающим, так и опытным разработчикам программного обеспечения, а также в качестве дополнительных учебных материалов.

Роберт Лав

Программирование, программы, базы данных / Программирование / Книги по IT