/// <summary> /// 创建一个数据库用户 /// </summary> /// <param name="UserName"></param> /// <param name="Password"></param> /// <param name="GrantOwnerDatabaseName"></param> /// <param name="ReturnDescription"></param> /// <returns></returns> public override bool CreateUser(string UserName, string Password, string GrantOwnerDatabaseName, ref string ReturnDescription) { ReturnDescription = ""; if (!VaildStringParameters(ref ReturnDescription, UserName, Password, GrantOwnerDatabaseName)) { return(false); } GrantOwnerDatabaseName = GrantOwnerDatabaseName.Trim(); if (!GrantOwnerDatabaseName.StartsWith("`") || !GrantOwnerDatabaseName.EndsWith("`")) { GrantOwnerDatabaseName = "`" + GrantOwnerDatabaseName + "`"; } if (!Open(ref ReturnDescription)) { return(false); } string comm = String.Format("CREATE USER '{0}'@'%' IDENTIFIED BY '{1}';\r\n GRANT ALL ON {2}.* TO '{3}'@'%';\r\n flush privileges;", UserName, Password, GrantOwnerDatabaseName, UserName); Shove.DatabaseFactory.MySQL mysql = new Shove.DatabaseFactory.MySQL(this.ConnectionString); int result = mysql.ExecuteNonQuery(comm); Close(); if (result < 0) { ReturnDescription = "数据库指令执行发生错误,返回值是 " + result.ToString() + "||" + comm; return(false); } return(true); }
/// <summary> /// 创建一个新的数据库 /// </summary> /// <param name="DatabaseName"></param> /// <param name="ReturnDescription"></param> /// <returns></returns> public override bool CreateDatabase(string DatabaseName, ref string ReturnDescription) { ReturnDescription = ""; if (!VaildStringParameters(ref ReturnDescription, DatabaseName)) { return(false); } DatabaseName = DatabaseName.Trim(); if (!DatabaseName.StartsWith("`") || !DatabaseName.EndsWith("`")) { DatabaseName = "`" + DatabaseName + "`"; } Shove.DatabaseFactory.MySQL mysql = new Shove.DatabaseFactory.MySQL(this.ConnectionString); try { int result = mysql.ExecuteNonQuery("create database " + DatabaseName + " DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;"); Close(); if (result < 0) { ReturnDescription = "数据库指令执行发生错误,返回值是 " + result.ToString() + "|" + "create database " + DatabaseName; return(false); } } catch (Exception e) { ReturnDescription = "创建数据库出错!" + e.ToString() + "|" + "create database " + DatabaseName; return(false); } return(true); }