powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Вызов PLSQL функии на C#
4 сообщений из 4, страница 1 из 1
Вызов PLSQL функии на C#
    #36609112
DrunkCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На сервере Oracle есть функция:
Код: plaintext
1.
2.
3.
4.
5.
create or replace function TestFun return integer is
  Result integer;
begin
  Result := 1;
  return(Result);
end TestFun;
Пытаюсь вызвать ее на ASP.Net странице с помощью следующего кода:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.OracleClient;

public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        OracleConnection conn = new OracleConnection("..xxxx..");
        conn.Open();
        OracleCommand cmd = conn.CreateCommand();
        cmd.CommandText = "TestFun";
        cmd.CommandType = CommandType.StoredProcedure;
        decimal res = (decimal)cmd.ExecuteScalar();
        Label1.Text = res.ToString();
    }
}
В ответ вылетает такая ошибка:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Server Error in '/' Application.
ORA-06550: line 1, column 7:
PLS-00221: 'TESTFUN' is not a procedure or is undefined
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.OracleClient.OracleException: ORA-06550: line 1, column 7:
PLS-00221: 'TESTFUN' is not a procedure or is undefined
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
Может кто подскажет в чем я ошибаюсь?
...
Рейтинг: 0 / 0
Вызов PLSQL функии на C#
    #36609124
DrunkCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Заменил вызов функции на код ниже вроде все исполняется без ошибок только результат выполнения ExecuteScalar == null
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
    protected void Page_Load(object sender, EventArgs e)
    {

        OracleConnection conn = new OracleConnection("xxx");
        conn.Open();
        OracleCommand cmd = conn.CreateCommand();
        cmd.CommandText = "declare pResult integer; begin pResult := TestFun; end;";
        cmd.CommandType = CommandType.Text;
        object res = cmd.ExecuteScalar();
        Label1.Text = res.ToString();
    }
...
Рейтинг: 0 / 0
Вызов PLSQL функии на C#
    #36609152
DrunkCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Вызов PLSQL функии на C#
    #37666892
Neftedollar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Полезная ссылка, спасибо. =)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Вызов PLSQL функии на C#
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]