Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
 Аватар для Tleck
7 / 7 / 2
Регистрация: 11.09.2011
Сообщений: 128

Oracle: ошибка о том, что параметр не инициализирован

29.12.2012, 08:30. Показов 1339. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При компиляции следующего кода получаю ошибку о том, что параметр [2] не инициализирован(:s_code):

C#
1
2
3
4
5
6
7
8
9
oracleCom.CommandText = @"declare P_ID tbl_objects.i_id%TYPE;
                                                        BEGIN
                                                            UPDATE tbl_objects
                                                            SET i_status_id = 234
                                                            WHERE s_code = :s_code
                                                            RETURNING i_id INTO :p_id;
                                                        END;";
                                oracleCom.Parameters.Add("s_code", OracleType.NVarChar).Value = strObjectChanged;
                                oracleCom.Parameters.Add("p_id", OracleType.Number).Direction = ParameterDirection.Output;
В чем проблема?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.12.2012, 08:30
Ответы с готовыми решениями:

Ошибка о том, что параметр не найден: qry_EveryDay: Parameter 'param1' not found
вот сдал сессию и вернулся к проекту... поскольку на новый вопрос моём прошлом топике никто не ответил, я создаю новый... Построил я...

Как определить, что массив не инициализирован?
допустим есть код Dim a() As MyType ReDim a(2) Erase a() как после оператора Erase a() определить, что массив...

Ошибка о том, что приложение не ассоциировано с файлами
при входе в клиент онлайн игры и при попытке зарегистрироваться выходит это, после чего клиент закрывается. Нужно вроде как установить...

7
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
29.12.2012, 09:17
Чувствуется мне, что все дело в двоеточиях в запросе перед параметрами ...
0
 Аватар для Tleck
7 / 7 / 2
Регистрация: 11.09.2011
Сообщений: 128
29.12.2012, 09:51  [ТС]
Цитата Сообщение от kodv Посмотреть сообщение
Чувствуется мне, что все дело в двоеточиях в запросе перед параметрами ...
В PL/SQL так параметры определяются
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
29.12.2012, 10:14
Цитата Сообщение от Tleck Посмотреть сообщение
В PL/SQL так параметры определяются
Почему тогда нет двоеточия здесь?
C#
1
2
oracleCom.Parameters.Add("s_code", OracleType.NVarChar).Value = strObjectChanged;
oracleCom.Parameters.Add("p_id", OracleType.Number).Direction = ParameterDirection.Output;
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
29.12.2012, 10:21
Когда имя переменной совпадает с именем поля, то в общем случае это не есть гут
0
 Аватар для Tleck
7 / 7 / 2
Регистрация: 11.09.2011
Сообщений: 128
29.12.2012, 11:16  [ТС]
Цитата Сообщение от kodv Посмотреть сообщение
Почему тогда нет двоеточия
Поверьте не в этом дело. Здесь все норм. Так и должно быть.
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
29.12.2012, 15:38
Цитата Сообщение от Tleck Посмотреть сообщение
Поверьте не в этом дело. Здесь все норм. Так и должно быть.
Наверное, именно поэтому программа пишет:
Цитата Сообщение от Tleck Посмотреть сообщение
параметр [2] не инициализирован(:s_code)
Честно, не писал для Oracle'а, ибо на работе используется MS SQL Server. Поэтому точно утверждать не могу. Но для MS SQL собачки (@) ставятся как в запросе, так и при инициализации параметров. Хотя вроде можно и без собачек, но в таком случае их не должно быть как в параметрах, так и в запросе. Написание параметров через двоеточие встрчал в BCB5. Но там не ADO.NET, а ADO.
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
29.12.2012, 17:42
Откуда взялся номер параметра 2? Ведь в вашем коде он первый.
Предположу, что вы привели упрощенный кусок кода, и опустили кое-какие важные детали: например поменяли порядок добавления параметров. OracleCommand из ODP.NET по умолчанию привязывает параметры по номеру, а не по имени.
Попробуйте написать:
C#
1
oracleCo.BindByName = true;
Сразу после создания OracleCommand

PS. Какой ADO.NET провайдер используете: MS, ODP.NET, Devart?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.12.2012, 17:42
Помогаю со студенческими работами здесь

WD my passport не инициализирован, ошибка ввода-вывода
Вчера мой Wd my passport перестал отображаться в моём компьютере. Последний раз его использовал несколько месяцев назад. В этот раз...

Выскакивает ошибка о том, что введено неправильное число
Я заранее извиняюсь за грубость. Я не хочу выслушивать крики людей, типа :Твой код не эффективен, КАК ТЫ ТАК ПЛОХО КОДИШь, и.т.д. ...

Ошибка о том, что нельзя отобразить модальное окно
Здравствуйте! Что за ошибка? Как её исправить?

Ошибка на этапе выполнения при том, что программа выполняется до конца
Есть матрица с заданным кол-вом столбцов и строк, которую надо сдвинуть, на выбор, во все 4 направления и наискосок. Программа, в принципе,...

Ошибка: переменная цикла for должна описываться в том же блоке что и цикл for
Не запускается что не так? program fa4; type ttf=file of integer; var f,f1:ttf; a,b:array of integer; i,j:integer; procedure...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru