2017-04-20 73 views
0

我想用sys用戶連接到數據庫。將架構更改爲不同的用戶。執行查詢並將結果寫入文件。更改模式,執行查詢和寫入輸出到文件

我正在使用oralce管理的數據訪問。 https://www.nuget.org/packages/Oracle.ManagedDataAccess/

我已經嘗試了三種不同的方式。

1)spool->不起作用,因爲我不執行的sqlplus但managedDataAccess

2.連接)開始執行immediate'changeschema」立即執行‘查詢’結束 - >上的讀者,因爲沒有輸出開始/結束

3.)嘗試更改連接conn.ChangeDatabase(user);不managedDataAccess

工作,這是我的連接字符串:

string oradb = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=" + host + ")(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=" + instance + ")));User Id = " + oracleUser + "; Password =" + oraclePassword; 

我可以更改連接字符串

+0

您正在使用哪個數據庫?你標記了mysql和oracle,不能兼而有之。請更正標籤。 –

+0

修好了:)對不起 – user2811630

+0

沒問題,常見的錯誤。 –

回答

0

如果連接的SYS你不需要更改架構內的模式,你可以在你的from子句中引用模式,例如

select * 
from my_user.my_tab 
; 
+0

感謝您的回答。我已經知道,但這對我來說更像是一種解決方法而不是解決方案。我正在執行自定義查詢,並且不希望在查詢中輸入可放入的內容。 – user2811630

+0

您可以讓SYS擁有您的owner.table_name的同義詞。 –