|
|
|
Помогите студенту с IBStoredPros
|
|||
|---|---|---|---|
|
#18+
Что-то я уже запутался с ними. От этой курсовой уже голова неработает. Я пишу так .............................................................................................................. CREATE PROCEDURE IRASYTI_NARIUS ( VARDAS CHAR (20), PAVARDE CHAR (20), GIMTADIENIS DATE, ASMENS_KODAS VARCHAR (11), SK_ID INTEGER) AS BEGIN INSERT INTO ZMOGUS(VARDAS, PAVARDE, GIMTADIENIS, ASMENS_KODAS, SK_ID) VALUES(:VARDAS, :PAVARDE, :GIMTADIENIS, :ASMENS_KODAS, :SK_ID); SUSPEND; END ................................................................................................................ В Делфи так ............................................................................................................ with Form1.IBDatabase1 do if not IBtransaction1.InTransaction then IBTransaction1.StartTransaction; IBquery1.SQL.Clear; IBStoredproc1.Name:= 'IRASYTI_NARIUS'; IbStoredproc1.ParamByName('VARDAS').AsString:=vardasEdit.Text; IbStoredproc1.ParamByName('PAVARDE').AsString:= pavardeEdit.Text; IbStoredproc1.ParamByName('GIMTADIENIS').AsString:= GIMTADIENISEDIT.Text; IBStoredproc1.ParamByName('ASMENS_KODAS').AsString:= Asmens_kodasEdit.Text; IBStoredproc1.ParamByName('SK_ID').AsString:= Asmens_kodasEdit.Text; IBStoredproc1.Prepare; IBStoredproc1.ExecProc; IBquery1.SQL.Add ('SELECT * FROM SEIMA'); IBQuery1.Open; end .............................................................................................................. Когда дохожу до первого параметра, IbStoredproc1.ParamByName('VARDAS').AsString:=vardasEdit.Text; вылетает ошибка. Что-то я тут напутал. Но непойму что. Может свежим глазом лучше видно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2004, 23:54:18 |
|
||
|
Помогите студенту с IBStoredPros
|
|||
|---|---|---|---|
|
#18+
1. У тебя процедура действия, посему SUSPEND - нафиг. 2. IBStoredproc1.Name:= 'IRASYTI_NARIUS'; IbStoredproc1.ParamByName('VARDAS').AsString:=vardasEdit.Text; Ты сначала говоришь "Вася, теперь тебя будут звать Петей", А потом - "Вася, слушай сюда!" - но Вася-то уже Петя! Чтоб задать имя вызываемой ХП, юзай свойство StoredProcName. IBStoredproc1.StoredProcName := 'IRASYTI_NARIUS' IbStoredproc1.ParamByName('VARDAS').Value {а не AsString}:= vardasEdit.Text; 3. У тебя в одной транзакции запись (IbStoredproc1.ExecProc) и чтение (IBQuery1.Open), а это не есть ГУТ. 4. Ну и там еще помаленьку... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 04:12:16 |
|
||
|
Помогите студенту с IBStoredPros
|
|||
|---|---|---|---|
|
#18+
2 zerrowich убери SUSPEND из процедуры, потому как он не нужен... про StoredProcName Тебе уже сказали... нужно для начала создать параметр в компоненте IBStoredProc... вот что у меня работает: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 09:00:36 |
|
||
|
Помогите студенту с IBStoredPros
|
|||
|---|---|---|---|
|
#18+
Спасибо за замечания. Но интересно, хотя в Object inspector в Storedproc парамеры эсть но показывает ошибку " required para value not set". Конечно можно вписать вручную код как предложил товарищ, но хочится разобратся до конца. спасибо всем за ответы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 12:29:20 |
|
||
|
Помогите студенту с IBStoredPros
|
|||
|---|---|---|---|
|
#18+
ошибку переведи и поймёшь что делать надо и чего не хватает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 13:49:50 |
|
||
|
Помогите студенту с IBStoredPros
|
|||
|---|---|---|---|
|
#18+
кстати можно и не в ручную параметры задавать, но тогда если в базе 100 процедур, то для вызова каждой нужно будет свой IBStoredProc компонент делать... кстати SUSPEND из процедуры убрал??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 13:51:32 |
|
||
|
Помогите студенту с IBStoredPros
|
|||
|---|---|---|---|
|
#18+
Suspend убрал. все подправил. Но что-то непринимает параметры б хотя их видит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 14:53:07 |
|
||
|
Помогите студенту с IBStoredPros
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2004, 08:34:58 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32557311&tid=1578415]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
204ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 509ms |

| 0 / 0 |
