我想检索 oracle 中的所有模式并显示在组合框中。
我一直在研究并且知道我可以通过 GetSchema() 进行检索。
DataTable table = connection.GetSchema();
我不知道如何在列表中包含模式。
List<string> list = new List<string>();
return list;
请帮忙!
我已经尝试从 dba_objects 中检索不同的所有者。
//Show schemas within a server, return a list of string
public override List<string> showSchema()
{
string retrieveSchema = "select distinct owner from dba_objects;";
List<string> list = new List<string>();
if (this.OpenConnection() == true)
{
//Create Command
OracleCommand cmd = new OracleCommand(retrieveSchema, conn);
Console.WriteLine("State: " + conn.State);
try
{
//Create a data reader and Execute the command
OracleDataReader drOracle = cmd.ExecuteReader();
//Read the data and store them in the list
while (drOracle.Read())
{
list.Add(drOracle.GetOracleValue(0).ToString() + "");
}
//close Data Reader
drOracle.Close();
//close Connection
this.CloseConnection();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
Console.WriteLine("State: " + conn.State);
}
}
//return list to be displayed
return list;
}
我可以运行 sql 查询,但是在我的代码中添加它时会出现 ora-00911: invalid character 错误。