Вниз
Скачать: CL | DM;

Пердача null в качестве параметра процедуре.   Найти похожие ветки 

← →
Сабач   (2006-02-08 09:33) [0]

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


← →
msguns ©   (2006-02-08 09:52) [1]

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

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


← →
evvcom ©   (2006-02-08 10:04) [2]

ParamByName("Param").Clear;


← →
Сабач   (2006-02-08 10:31) [3]

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


← →
Сабач   (2006-02-08 10:36) [4]

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


← →
msguns ©   (2006-02-08 10:39) [5]

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


← →
Сабач   (2006-02-08 10:43) [6]

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


← →
Bless ©   (2006-02-08 10:47) [7]

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

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

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


← →
Bless ©   (2006-02-08 10:49) [8]

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


← →
Desdechado ©   (2006-02-08 10:55) [9]

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


← →
Bless ©   (2006-02-08 10:56) [10]

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


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

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

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

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


← →
Сабач   (2006-02-08 11:08) [12]

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


← →
Desdechado ©   (2006-02-08 11:36) [13]

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


← →
Ega23 ©   (2006-02-08 11:57) [14]


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

AS
.....



?


← →
evvcom ©   (2006-02-08 15:19) [15]


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

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


← →
Ольга   (2006-02-08 18:39) [16]

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.027 c
1-1141008643
Чертежник
2006-02-27 05:50
2006.04.02
Не рисует на канве


15-1142228476
Ega23
2006-03-13 08:41
2006.04.02
С Днём рождения! 13 марта


2-1142405836
kkostik
2006-03-15 09:57
2006.04.02
Определить имя устройства!


2-1142565565
Student iz KZ
2006-03-17 06:19
2006.04.02
Ошибка "Переполнение стека"


2-1142577578
worldmen
2006-03-17 09:39
2006.04.02
Прога D5 не печатает под XP




   Наверх