-
Доброе время суток! Помогите с кодом переноса текстовых данных с Дельфи формы в таблицу Oracle. Таблица создана. Данные на форме заполняются. Необходимо их записывать нажатием кнопки в таблицу.Одно нажатие - одна запись в таблице. с помощью каких компонентов Д7 можно это сделать.
-
Данные на форме в какие компоненты заполняются? Если, например, имеем текст в TMemo, то для непосредственной работы с текстом в БД нужно использовать TDBMemo. TEdit - TDBEdit и т.п. Только надо не забыть, что DB-компоненты требуют привязки к конкретным таблицам и полям в базе: пропертя DataSource и DataField.
-
> [0] ssa (10.11.08 14:37)
Достаточно прочитать хотя бы одну статейку в стиле "Делфи за 21 день".
-
Даннае на форме - Edit.text или Combobox.text в девелопере могу написать прцедуру (где входные параметры будут тексты с дельфи формы) вставки данных в таблицу Оракла какие лучше компоненты использовать для передачи в процедуру и какой код при этом выполнить
-
А какие у тебя есть?
-
> какие лучше компоненты использовать для передачи в процедуру
Когда нет четко обозначенных критериев оценки на "лучше-хуже" и нет желания читать буквари, можно смело использовать первые попавшиеся или никакие не использовать.
-
У меня D7 и хотел через хранимую процедуру StoreProc - (stpParus) with stpParus do begin ParamByName('sDOCNUMB').AsString := edtNumber.Text; ParamByName('sAGN').AsString := sAGN; ParamByName('sTRANSPORT').AsString := edtTransp.Text; ParamByName('sNOMEN').AsString := sNM; .... Prepare; ExecProc; end;
а в девелопере такая процедура create or replace procedure P_ZL_GRAIN_WEIGHT ( sDOCNUMB in varchar2, nWEIGHT_TARE in number, nWEIGHT_BRUTTO in number, dTARE_DATE in date, dBRUTTO_DATE in date, sTARE_USER in varchar2, -- sBRUTTO_USER in varchar2, sWEIGHTMECH in varchar2, sAGN in varchar2, sTRANSPORT in varchar2, sNOMEN in varchar2
) is nRN1 ZL_SSA_GRAIN_WEIGHT.RN%TYPE; nAGN_RN ZL_SSA_GRAIN_WEIGHT.AGN_RN%TYPE;
begin
nRN1 := gen_id;
SELECT A.RN into nAGN_RN FROM AGNLIST A WHERE TRIM(A.AGNABBR)=TRIM(sAGN);
insert into ZL_SSA_GRAIN_WEIGHT ( RN, COMPANY, DOCPREF, DOCNUMB, WEIGHT_TARE, WEIGHT_BRUTTO, TARE_DATE, BRUTTO_DATE, TARE_USER, BRUTTO_USER, WEIGHTMECH, AGN_RN, TRANSPORT, NOMEN ) values ( nRN1, 1710001, '08', sDOCNUMB, nWEIGHT_TARE, nWEIGHT_BRUTTO, dTARE_DATE, dBRUTTO_DATE, sTARE_USER, sTARE_USER, --sBRUTTO_USER, sWEIGHTMECH, nAGN_RN, sTRANSPORT, sNOMEN ); commit; end P_ZL_GRAIN_WEIGHT;
-
во первых не спрашивает логин и пароль хотя в LoginPromt - true и Params - указан логин и пароль
-
при выполнении sp возникает ошибка no logon on где неправильно у меня
-
для начала настрой правильно BDE-алиас
-
бде настроил, указал имя процедуры увидел параметры создал кнопку где прописал procedure TForm1.Button3Click(Sender: TObject); begin with sP1 do begin ParamByName('SDOCNUMB').AsString:=Edit2.Text; ParamByName('NWEIGHT_TARE').Value:=strtofloat(Edit6.Text); ParamByName('NWEIGHT_BRUTTO').Value:=strtofloat(Edit7.Text); ParamByName('DTARE_DATE').AsDateTime:=now; ParamByName('DBRUTTO_DATE').AsDateTime:=now; ParamByName('STARE_USER').AsString:=Edit2.Text; ParamByName('SWEIGHTMECH').AsString:=Edit2.Text; ParamByName('SAGN').AsString:=Edit3.Text; ParamByName('STRANSPORT').AsString:=Edit4.Text; ParamByName('SNOMEN').AsString:=Edit5.Text; Prepare; Execute; end; end;
при компиляции ошибка [Fatal Error] PrTest.dpr(2): Read error on 'c:\program files\borland\delphi7\Lib\System.dcu'
-
Через какие компоненты работаете ? Очевидно, запрос даже не доходит до сервера.
-
Database1: TDatabase; SP1: TStoredProc;
-
ошибка [Fatal Error] PrTest.dpr(2): Read error on 'c:\program files\borland\delphi7\Lib\System.dcu'
У тебя компьютер плохой. менять надо.
-
эту ошибку я победил не могу not logged on Alias ZLAK - ora 01012
-
для Database1: TDatabase; SP1: TStoredProc; как свойства изначально выставить (типа Active, SessionName, Connected,KeepConnection...
-
ORA-01012 not logged on
Cause: A host language program issued an Oracle call, other than OLON or OLOGON, without being logged on to Oracle. This can occur when a user process attempts to access the database after the instance it is connected to terminates, forcing the process to disconnect.
-
> ssa (10.11.08 16:23) [15] > для > Database1: TDatabase; > SP1: TStoredProc; > как свойства изначально выставить > (типа Active, SessionName, Connected,KeepConnection...
Тебе оракл честно говорит - законнектся сначала, потом дергай хранимки.
ODAC поставь - на седняшний момент одна из самых удобных библиотек.
-
Если работаете через BDE, то ей нужен алиас. Создайте и настройте его например в BDE администраторе, а затем подключите TDataBase к этому алиасу. Которче, справка по TDataBase + TSession Вам все подробно расскажет
-
> Cause: A host language program issued an Oracle call, other > than OLON or OLOGON
похоже, пытаются работать в режиме совместимости с Oracle7 Автор, скажи, какие компоненты используешь, версию Oracle, и как пытаешься коннектиться.
|