我正在使用 SYSDBA 动态创建一个 firebird 数据库。我想创建一个具有某些权限的用户,然后使用新用户打开这个数据库。有人可以帮忙吗?
var csb = new FbConnectionStringBuilder(@"DataSource=localhost;User=SYSDBA;Password=mw;Database=test.fdb;") { Pooling = false };
FbConnection.CreateDatabase(csb.ConnectionString, 16384, false, true);
FbConnection myConn = new FbConnection(csb.ConnectionString);
try
{
myConn.Open();
string sql = "CREATE USER user123 PASSWORD 'user123pass';
FbCommand cmd = new FbCommand(sql, myConn);
cmd.ExecuteNonQuery();
}
catch (System.Exception ex)
{
error = ex.ToString();
}
finally
{
if (myConn.State == ConnectionState.Open)
{
myConn.Close();
}
}
执行此代码时,会引发以下异常。
FirebirdSql.Data.FirebirdClient.FbException (0x80004005):在表“PLG$SRP”上添加违反 PRIMARY 或 UNIQUE KEY 约束“INTEG_5”的记录错误