我正尝试将我的Oracle数据库(包含所有表)备份到“ XE”到我想要的位置上的“ .bak”文件中。我正在使用OracleClient库
我用于连接的特定类: Oracle连接 OracleCommand
但是我一直得到这个:
System.Data.OracleClient.OracleException:'ORA-00900:无效的SQL语句 '
不知道我错了:'(
也尝试过使用OleDBConnection和OleDBCommand,但是得到了相同的错误:'(
OracleCommand cmd = new OracleCommand();
OracleConnection con = new OracleConnection("Data Source=XE;User ID=system;password=123;Unicode=true");
cmd.Connection = con;
string databaseName = null;
cmd.CommandText = "select * from global_name";
con.Open();
DataTable dt = new DataTable();
dt.Load(cmd.ExecuteReader());
foreach(DataRow row in dt.Rows) {
databaseName = Convert.ToString(row[0]);
MessageBox.Show("" + databaseName);
}
con.Close();
cmd.CommandText = "backup DATABASE " + databaseName + " TO DISK = '" + back_path.Text + "\\" + back_file_name.Text + ".bak'";
con.Open();
cmd.ExecuteNonQuery();
con.Close();
我得到的异常:System.Data.OracleClient.OracleException:'ORA-00900:无效的SQL语句 '
引发的异常:System.Data.OracleClient.dll中的“ System.Data.OracleClient.OracleException” System.Transactions严重:0:http://msdn.microsoft.com/TraceCodes/System/ActivityTracing/2004/07/Reliability/Exception/Unhandled未处理的异常Nekron.exeSystem.Data.OracleClient.OracleException,System.Data.OracleClient,版本= 4.0.0.0,区域性=中性,PublicKeyToken = b77a5c561934e089ORA-00900:无效的SQL语句 在System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle,Int32 rc)