我想将数据库备份到要使用C#Windows Form应用程序的位置

时间:2019-07-14 10:05:27

标签: c# oracle

我正尝试将我的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)

0 个答案:

没有答案