2016-02-01 7 views
-1

Любой может помочь мне создать базу данных в MySQL только при первом запуске моего приложения C#. Второй раз, когда я запускаю это приложение, если база данных существует, необходимо создать код базы данных.Создание базы данных только при первом запуске визуального приложения C#

+3

Не могли бы вы показать нам код, пожалуйста? –

+0

Я еще не добрался, но хочу только предложения или помощь –

ответ

1

Если вы используете код сначала в Entity Framework, вы можете создать свою базу данных из классов на C#, которые определяют ваши таблицы и отношения.

После того, как у вас есть классы, вам просто нужно изменить или установить строку подключения в свою базу данных, а затем запустить код ... тогда база данных будет создана для вас ... по волшебству .. или вашим классам !!

Есть много образцов онлайн Code First с Azure http://www.dotnetjalps.com/2015/04/entity-framework-code-first--mysql-azure.html

Entity Framework Code First - Create Database with MySql?

0
private static bool CheckDatabaseExists(SqlConnection tmpConn, string databaseName) 
{ 
    string sqlCreateDBQuery; 
    bool result = false; 

    try 
    { 
     tmpConn = new SqlConnection("server=(local)\\SQLEXPRESS;Trusted_Connection=yes"); 

     sqlCreateDBQuery = string.Format("SELECT database_id FROM sys.databases WHERE Name 
     = '{0}'", databaseName); 

     using (tmpConn) 
     { 
      using (SqlCommand sqlCmd = new SqlCommand(sqlCreateDBQuery, tmpConn)) 
      { 
       tmpConn.Open(); 

       object resultObj = ExecuteScalar(); 

       int databaseID = 0;  

       if (resultObj != null) 
       { 
        int.TryParse(resultObj.ToString(), out databaseID); 
       } 

       tmpConn.Close(); 

       result = (databaseID > 0); 
      } 
     } 
    } 
    catch (Exception ex) 
    { 
     result = false; 
    } 

    return result; 
} 

Это будет работать с любым именем базы данных вы передаете в качестве параметра, и он будет возвращать логическое значение истины = база данных существует, ложь = база данных не существует (или произошла ошибка) .Ела истинное среднее пропустить создание false mean create database ..

+0

Показывает ошибку при выполнении скаляра –

Смежные вопросы