2015-02-22 1 views
0

Как я могу назвать oracle 10g с страницы asp.net?вызов oracle вид из asp.net?

View "DEPARTMENTS_VIEW" является

select Department_ID, DEPARTMEN_NAME , DISCOUNT from DEPARTMENTS 

C# код

OracleConnection conn = new OracleConnection(); 
    conn.ConnectionString = txtconnection.Text; 
    conn.Open(); 
    OracleCommand objCmd = new OracleCommand(); 
    objCmd.Connection = conn; 
    objCmd.CommandType = CommandType.StoredProcedure; 
    objCmd.CommandText = "DEPARTMENTS_VIEW"; 

    DataSet ds = new DataSet(); 
    OracleDataAdapter oraDa = new OracleDataAdapter(objCmd); 
    oraDa.Fill(ds, "department"); 
    gvGET_DEPARTMENTS.DataSource = ds.Tables["department"]; 
    gvGET_DEPARTMENTS.DataBind(); 
    conn.Close(); 

Я получаю код ошибки:

ORA-06550: строка 1, столбец 7:

PLS-00221: «DEPARTMENTS_VIEW» не является процедурой или не определено

ORA-06550: строка 1, столбец 7:

PL/SQL: Заявление игнорировали

+0

Сохраненная процедура и вид - это разные вещи. Вы не можете вызвать такое представление. Читайте: http://stackoverflow.com/questions/5194995/what-is-the-difference-between-a-stored-procedure-and-a-view и http://stackoverflow.com/questions/3773277/stored- procedure-vs-views –

ответ

1

View предназначен для использования таким же образом используется таблица:

OracleConnection conn = new OracleConnection(); 
conn.ConnectionString = txtconnection.Text; 
conn.Open(); 
OracleCommand objCmd = new OracleCommand(); 
objCmd.Connection = conn; 
objCmd.CommandType = CommandType.StoredProcedure; 
objCmd.CommandText = "SELECT * FROM DEPARTMENTS_VIEW"; 

DataSet ds = new DataSet(); 
OracleDataAdapter oraDa = new OracleDataAdapter(objCmd); 
oraDa.Fill(ds, "department"); 
gvGET_DEPARTMENTS.DataSource = ds.Tables["department"]; 
gvGET_DEPARTMENTS.DataBind(); 
conn.Close(); 

Вы выбираете данные из вида так же, как вы выбираете данные из таблицы.

+0

Спасибо за ваш повтор, как насчет синонима, я всегда получаю это сообщение об ошибке PLS-00428: в этом операторе SELECT ожидается предложение INTO – user2374513

+0

@ user2374513 - о каком синониме вы говорите? –

+0

@ user2374513 Использование синонимов зависит от типа синонима объекта. Если это функция синонимов, вы называете ее как функцию, если она представляет собой таблицу синонимов, вы выбираете данные так же, как вы выбираете данные из таблицы. – Dn24Z

Смежные вопросы