Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];

Вниз

Ошибка при исполнении процедуры.   Найти похожие ветки 

 
Yakudza   (2002-02-28 11:54) [0]

Есть форма добавления новой компании в базу, но несколько полей часто бывают пустыми, типа, emailа нет и т.д.. И когда исполняеться процедура, и есть такие пустые значения то она естественно ругаеться -

"Project acc.exe raised exception class EDBEngineError with message "General SQL error".
[INTERSOLV][ODBC Server driver] Character, decimal, and binary parameters cannot have a precision of zero."

подскажите как лучше решить эту проблему, пока что я проверяю - если TEdit.Text пусто то параметру процедуры присваиваю пробел.

Спасибо за любую информацию.


 
bas   (2002-02-28 12:15) [1]

Какая база-то?
Поля в БД notNULL?


 
Yakudza   (2002-02-28 12:29) [2]

База Sybase поля не not null.


 
Yakudza   (2002-02-28 12:58) [3]

Прошу прощения,опечатка:))
поля в базе null :))


 
roottim   (2002-02-28 13:15) [4]

раз ты используеш не дб компоненты скорее всего в самой процедуре баг
выложи ее


 
Yakudza   (2002-02-28 13:35) [5]

>roottim
Врядли это процедура, ругаеться еще до того как пытаеться исполнить процедуру на серваке.

но на всякий случай вот она -

CREATE PROCEDURE add (@name varchar(200),@address varchar (100),@phone varchar(20),@fax varchar(20),@a_first_name varchar (70),@a_last_name varchar (100),@website varchar (100), @email varchar (100),@notes varchar (250))

AS
DECLARE

@date datetime
BEGIN
SELECT @date = getdate()
INSERT INTO embassy name,address,phone,fax,a_first_name,a_last_name,website,email,add_date,notes) VALUES (@name,@address,@phone,@fax,@a_first_name,@a_last_name,@website,@email,@date,@notes)

END


 
roottim   (2002-02-28 13:54) [6]

ясен пень!...
он непонимает что за значение ему присваивают...
в оракловой бы проседуре я бы попробовал так

create procedure add ( name varchar(200) default null....
и у тебя скобочка опущена в инсерт, но это скорее очепятка :)


 
roottim   (2002-02-28 14:04) [7]

и второе!!.... ошибка при присвоении параметров могет быть


 
Yakudza   (2002-02-28 14:42) [8]

>roottim
default null.... - счас попробую !


 
Yakudza   (2002-02-28 15:28) [9]

c null все равно ругаеться.:(
Я ж говорю это StoredProc ругаеться перед тем как запустить параметры на сервак.


 
roottim   (2002-02-28 15:35) [10]

выложи код где инициализируеш SP


 
Yakudza   (2002-02-28 16:30) [11]

Вот :

DM.spAdd_Embassy.Prepare;
DM.spAdd_Embassy.ParamByName("@name").AsString := Trim(edEmbName.Text);
DM.spAdd_Embassy.ParamByName("@address").AsString := Trim(mAddress.Text);
DM.spAdd_Embassy.ParamByName("@phone").AsString := phone;
DM.spAdd_Embassy.ParamByName("@fax").AsString := fax;
DM.spAdd_Embassy.ParamByName("@a_first_name").AsString := a_first_name;
DM.spAdd_Embassy.ParamByName("@a_last_name").AsString := a_last_name;
DM.spAdd_Embassy.ParamByName("@website").AsString := website;
DM.spAdd_Embassy.ParamByName("@email").AsString := email;
DM.spAdd_Embassy.ParamByName("@notes").AsString := notes;
DM.spAdd_Embassy.ExecProc;


 
roottim   (2002-02-28 16:45) [12]

DM.spAdd_Embassy.Prepare вот эту перед exec ставь и назабудь UnPrepare после него
попробуй ка заменить так!..

if phone<>"" then
DM.spAdd_Embassy.ParamByName("@phone").AsString := phone;
else
DM.spAdd_Embassy.ParamByName("@phone").Value:=NULL;

а так в пр все по уму!!! может гвоздик и в этом...



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

Форум: "Базы";
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
3-90774
Lena
2002-03-01 20:32
2002.03.28
Помогите!


14-91048
Blackweber
2002-02-14 01:43
2002.03.28
Как сделатb dxf-файл(для OpenGL)


3-90770
Snake
2002-03-02 09:17
2002.03.28
В BDE администраторе на что влияет свойство LOCAL SHARE?


1-90871
P.
2002-03-17 13:40
2002.03.28
Вещественный тип...


1-90999
fag2000@ok.ru
2002-03-15 13:12
2002.03.28
Как узнать HANDLE окна OLE объекта





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский