解决asp.net页面插入数据时权限不足问题

来源:互联网 发布:风管阻力计算软件 编辑:程序博客网 时间:2024/06/07 10:04

static void Main(string[] args)
  {
  string connstr = "Data Source=***;user=system;password=***;";
  OracleConnection conn = new OracleConnection(connstr);
  conn.Open();

  string orclstr="insert into SYS.A_MODULE values('03','查看生产任务','查看生产任务进度')";
  try
  {
  OracleCommand cmd = new OracleCommand(orclstr, conn);
  cmd.ExecuteNonQuery();
  }
  catch (InvalidOperationException ex)
  {
  Console.Write(ex.Message);
  }
  }

 

运行产生权限不足问题

 

解决方法:

 

问题已解决,犯了个错,在sql developer里新建连接时,如果选择system用户登录,则role选择default,测试OK,插入数据也OK;但是选择sys用户登录时,role必须选择sysdba才能测试连接通过,但问题也出在这:数据库连接是OK了,在asp.net页面写连接字符串时如果user=sys,运行时提示必须用sysdba用户登录,纳闷了,我在sql developer里就是选择了role为sysdba才建立的连接呀!!!找了好多资料,看来是这个sys用户的问题,有好多建议说最好不用sys,自己新建用户,在新用户下建表,就一切OK!!本人测试了一下system,role为default建立的连接,建了张表,insert没问题

 

另一种解决办法:

      在sql developer中用sys用户登录,在每个表的属性里更改,把相关权限grant给system用户。。。。问题解决

原创粉丝点击