我正在运行一个 Oracle 10g 数据库,目前正在用 c# 编写一个应用程序来与之交互。
我已经编写了连接数据库所需的内容,并且能够查询它以返回结果。我首先使用 System.Data.OracleClient 以 SYSMAN 身份登录。但是为了关闭并重新启动数据库,我需要使用 SYSDBA 权限登录(如果我错了,请纠正我)因为我做不到使用 System.Data.OracleClient 我现在使用 ODP,Oracle.DataAccess。
我的问题是我正在尝试运行命令“立即关机”,但出现错误:
Oracle.DataAccess.Client.OracleException ORA-00900:无效的 SQL 语句
关于我需要更改的任何想法,以下是我用来执行查询的代码。
OracleConnection conn = new OracleConnection(
"Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=smile)(PORT=1521)"+
"(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MOUTH.smile)));"+
"User id=SYSMAN;Password=thepassword;DBA PRIVILEGE=SYSDBA";
int value;
OracleCommand cmd = new OracleCommand("shutdown immediate", conn);
value = cmd.ExecuteNonQuery();
我知道它连接正常,因为我查询了数据库并得到了结果,不确定我是否肯定拥有 SYSDBA 权限,不知道如何检查?
谢谢