仅在首次运行 Visual C# 应用程序时创建数据库

本文关键字:应用程序 创建 数据库 Visual 运行 | 更新日期: 2023-09-27 18:32:39

任何人都帮助我仅在第一次运行 c# 应用程序时在 MySQL 中创建数据库。第二次运行此应用程序时,如果数据库存在,则应跳过数据库代码的创建。

仅在首次运行 Visual C# 应用程序时创建数据库

如果首先在实体框架中使用代码,则可以从定义表和关系的 C# 类创建数据库。

有了类后,您只需更改或设置数据库的连接字符串,然后运行代码...然后将为您创建数据库...通过魔法..或者你的课程!!

网上有很多样品使用 Azure 进行代码优先http://www.dotnetjalps.com/2015/04/entity-framework-code-first--mysql-azure.html

实体框架代码优先 - 使用 MySql 创建数据库?

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;
}

这将适用于您作为参数传入的任何数据库名称,它将返回一个布尔值 true = 数据库存在,false = 数据库不存在(或发生错误)。如果真的意思是跳过创建假的意思是创建数据库。