Вставка параметров в базу данных Oracle через asp.net - PullRequest
0 голосов
/ 06 марта 2012

Я занимаюсь разработкой приложения ASP.net с базой данных Oracle. Когда я пытаюсь вставить данные в таблицу REGISTER, выдается исключение, как показано ниже

ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'INSERTREGISTER'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

таблица РЕГИСТРАЦИЯ имеет ИМЯ ПОЛЬЗОВАТЕЛЯ, ПАРОЛЬ, EMAIL в качестве столбцов

Процедура сохранения INSERTREGISTER выглядит следующим образом

create or replace
PROCEDURE INSERTREGISTER IS

u1 varchar2(20);
p1 varchar2(20);
e1 varchar2(20);

BEGIN

INSERT INTO REGISTER (USERNAME, PASSWORD, EMAIL) VALUES (u1, p1, e1);

END INSERTREGISTER;

мой код c #:

public int Insert(string u1, string p1, string e1)

    {
        try
        {
            OracleCommand cmd = new OracleCommand("INSERTREGISTER", conn);
            cmd.CommandType = CommandType.StoredProcedure;

        cmd.Parameters.Add(new OracleParameter("u1", OracleType.VarChar)).Value = u1;
        cmd.Parameters.Add(new OracleParameter("p1", OracleType.VarChar)).Value = p1;
        cmd.Parameters.Add(new OracleParameter("e1", OracleType.VarChar)).Value = e1;

            conn.Open();
            cmd.ExecuteNonQuery();

            return cmd.ExecuteNonQuery();

        }

Пожалуйста, помогите мне

С уважением, Арджун

1 Ответ

1 голос
/ 06 марта 2012

Измените вашу процедуру на

create or replace
PROCEDURE INSERTREGISTER (u1 varchar2,p1 varchar2,e1 varchar2) AS
BEGIN
--your sql statement
END
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...