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用户。。。。问题解决