Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Пердача null в качестве параметра процедуре. [D7, MSSQL]


Сабач ©   (2006-02-08 09:33:00) 

Необходимо в качестве параметра типа int в процедуру на SQL сервере передать значение null. Если ничего не передаю то передаёться 0. Если присваивать null то выдаёться ошибка.


Ольга   (2006-02-08 18:39:00) [1]

MyProc.Parameters.ParamValues['@par']:=UnAssigned;


evvcom   (2006-02-08 15:19:00) [2]


> evvcom © у меня почему то нету метода Clear

Да... Точно... У ADODataSet есть Parameters.ParamByName: TParameter, у которого нет Clear. А у ClientDataSet, IBStoredProc, StoredProc, OraStoredProc есть Params.ParamByName: TParam, у которого есть Clear. Вот поэтому и просят всегда указать компоненты доступа к БД.


Ega23   (2006-02-08 11:57:00) [3]


Create procedure MyProc
@Param1 int=0,
@Prarm2 int= NULL

AS
.....



?


Desdechado   (2006-02-08 11:36:00) [4]

сразу бы так, а то мутил тут, на уточняющие вопросы не отвечал


Сабач   (2006-02-08 11:08:00) [5]

Короче всё сам разобрался ))) Всем спасибо за помощь ))


Сабач   (2006-02-08 11:00:00) [6]

Приведи, плз, полный текст ошибки и текст хранимой процедуры.
------------------
Cannot insert the value NULL into colum "kv" table

Что делает эта процедура?
-----------------------
процедура вставляет новые строки

Не заносит ли она значение, переданное в @kv, в какой-нибудь столбец, который null не приемлит (это я телепатор включаю на малых оборотах)?
Кстати, в [0] только описание ситуации. Чего спросить-то хотел? Почему ругается?
--------
Я же говорю если выполнить эту процедуру в Query Analizer то работает всё нормально, в том числе и с параметрами NULL тем более в таблице уже есть строки со значением null


Bless   (2006-02-08 10:56:00) [7]

И уж совсем бы хорошо, скрипт на создание таблицы, в которую идет вставка (если идет, конечно)


Desdechado   (2006-02-08 10:55:00) [8]

и очень желательно компоненты доступа к данным укажи


Bless   (2006-02-08 10:49:00) [9]

Сабач  [6]>
Приведи, плз, полный текст ошибки и текст хранимой процедуры.


Bless   (2006-02-08 10:47:00) [10]

Сабач   (08.02.06 10:36) [4]
А ошибку выдаёт, что не может вставить значени null в столбец

И что, есть основания этому не верить?
Что делает эта процедура?

Не заносит ли она значение, переданное в @kv, в какой-нибудь столбец, который null не приемлит (это я телепатор включаю на малых оборотах)?
Кстати, в [0] только описание ситуации. Чего спросить-то хотел? Почему ругается?


Сабач   (2006-02-08 10:43:00) [11]

msguns © Нет true. Если в Query Analizer выполнять эту процедуру и в качестве параметра, указывать Null то работает процедура работает нормально нормально.


msguns   (2006-02-08 10:39:00) [12]

Столбец у тебя AllowedNull = false
?


Сабач   (2006-02-08 10:36:00) [13]

А ошибку выдаёт, что не может вставить значени null в столбец


Сабач   (2006-02-08 10:31:00) [14]

evvcom © у меня почему то нету метода Clear
msguns © вот код
dm.NomStoredProc1.Parameters.ParamByName('@kv').Value:=null;
dm.NomStoredProc1.ExecProc;
Ошибка возникает при выполнении программы, компилируеться нормально


evvcom   (2006-02-08 10:04:00) [15]

ParamByName('Param').Clear;


msguns   (2006-02-08 09:52:00) [16]

Код покажи. Где ошибка

ЗЫ. Uses Variants, надеюсь, имеется ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо