oracle缺失用户或角色,用于创建用户的参数化查询引发缺少的用户名或角色名异常...

我在试着运行一个

CREATE USER

使用oracle.managedataaccess库查询oracle 12数据库。此查询在不使用命名参数的情况下工作正常。但是当我尝试使用命名参数时,看起来参数没有正确地传递给查询。

我尝试将参数与以下代码一起使用(注意:我使用

Oracle.ManagedData访问

图书馆):

using(OracleConnection con = new OracleConnection(_connectionString)) {

con.Open();

using(OracleCommand cmd = con.CreateCommand()) {

cmd.CommandText = "CREATE USER :username IDENTIFIED BY :password";

cmd.Parameters.Add("username", "A_TESTUSER");

cmd.Parameters.Add("password", "A_PASSWORD");

//cmd.Parameters.Add(":username", "A_TESTUSER");

//cmd.Parameters.Add(":password", "A_PASSWORD");

//cmd.Parameters.Add(":username", OracleDbType.Varchar2).Value = "A_TESTUSER";

//cmd.Parameters.Add(":password", OracleDbType.Varchar2).Value = "A_TESTPASS";

cmd.ExecuteNonQuery();

}

}

导致以下异常。

Oracle.ManagedDataAccess.Client.OracleException (0x80004005): ORA-01935: missing user or role name.

当我用这样的数据内联运行查询时,当我进行设置时,查询会工作。

cmd.CommandText = "CREATE USER A_TESTUSER IDENTIFIED BY A_PASSWORD";

我也试着用

@

而不是

:

指示参数而不成功。我应该如何将参数传递给查询?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值