Проверьте, создана ли локальная база данных C # - PullRequest
2 голосов
/ 26 мая 2011

Почти сделано с моим генератором паролей C # / Store. Все пароли хранятся в локальной зашифрованной базе данных, которая хэшируется и также имеет пароль БД. Я использую sql express / compact (как бы он ни назывался) для создания базы данных вручную. Мне было интересно, есть ли способ проверить, была ли база данных уже создана и включены ли правильные таблицы. Также есть ли способ, если БД не создана, чтобы сказать ему, чтобы создать зашифрованную БД? Также создайте папку в определенном месте, если ее там нет, создайте ее и сохраните в ней БД.

Спасибо

Ответы [ 2 ]

2 голосов
/ 26 мая 2011

Вы можете выполнить запрос, подобный этому

  IF NOT EXISTS
   (  SELECT [name] 
      FROM sys.tables
      WHERE [name] = 'TableName`
   )
   CREATE TABLE TableName (Col1 int, Col2 int ... )

для каждой таблицы в правильном порядке.

1 голос
/ 27 мая 2011

Мне было интересно, есть ли способ проверить, была ли база данных уже создано

Select * from sys.databases Where name = 'YourDatabaseName'

Альтернативный

Select * from sys.objects Where name = 'YourDatabaseName'

имеет правильные таблицы включены

Select * from sys.tables where name = 'YourTableName'

Альтернативный

Select * from sys.objects where name = 'YourTableName'

Также есть ли способ, если БД не создан, чтобы сказать это, чтобы создать зашифрованная БД?

If Not Exists(Select * from sys.databases Where name = 'YourDatabaseName')
Begin
    --Create your database
End

Создание папки - это процесс при создании базы данных

...