任何人都帮我在第一次运行c#应用程序时在MySQL中创建一个数据库。第二次运行此应用程序时,如果数据库存在,则应跳过创建数据库代码。
答案 0 :(得分:1)
如果您在Entity Framework中首先使用代码,则可以使用C#中的类创建数据库,以定义表和关系。
一旦你有了你的课程,你只需要更改或设置一个连接字符串到你的数据库,然后运行代码...然后将为你创建数据库...通过魔术......或你的类!!
网上有很多样本 代码优先与Azure http://www.dotnetjalps.com/2015/04/entity-framework-code-first--mysql-azure.html
答案 1 :(得分: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;
}
这将与您作为参数传入的任何数据库名称一起使用,它将返回bool true =数据库存在,false =数据库不存在(或发生错误)。如果为true则跳过创建false意味着创建数据库..