ADO-добавяне на ред

5 отговора 0 прегледа
#1

ADO-добавяне на ред

with AdoTable1 do
begin
Active:=True;
Filtered:=false;
First;
while not eof do next;
append;
for i:=0 to FieldCount-1 do Fields.Value:=s;
post;
Active:=False;
end;
.........................................................................................
Искам да добавя най-отзад ред в базата, а ми го вмъква нейде по средата. Къде бъркам?!?!

Отговор
в отговор на Миленка #2

Re: ADO-добавяне на ред

Бъркаш в това, че си мислиш че има "най-отзад", "отпред", "по средата" и т.н.
В базата данни нямаш дефинирана подредба на записите. Гледай на тях като на картофи в торба. Подредбата им я дефинираш ти - било то с order by клаузата в select заявката, било то с пропъртита като IndexName, IndexFieldName на ADOTable, ili pyk с пропъртито Sort на ADOQuery (препоръчвам ти да ползваш него, вместо ADOTable - имаш по добър контрол какво и как да извлечеш от сървъра, а не всичко, както е при ADOTable).

Linux isn't free, it's worthless.


Отговор
в отговор на andrew_nikoloff #3

Re: ADO-добавяне на ред

Уф че съм и аз блондинка! Благодаря!

Отговор
в отговор на andrew_nikoloff #4

Re: ADO-добавяне на ред

Седя и си мисля дълбоко: Ами защо им са потрябвали тогава 2 команди (INSERT и APPEND)...
Колкото по-мисля - толкова повече ме заболява мозъка!

Отговор
в отговор на andrew_nikoloff #5

Re: ADO-добавяне на ред

adotable1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+NameBaza+';Persist Security Info=False';

Това сигурно има също значение.Сорка за многото постове, ама като не знам как да редактирам ....

Отговор
в отговор на Миленка #6

Re: ADO-добавяне на ред

Insert и Append са неща наследени от TDataSet класа в делфито. Той е абстрактен и като цяло са се опитали да покрият всякакви възможни приложения. Ти можеш да се вързваш към различни източници на данни. За някои от тях може да има дефинирана подредба на данните, а за други да няма. В някои имплементации на наследници на TDataSet единия метод директно вика другия (например IBX), т.е. са едно и също. Но за други може да имаш поддръжка на местоположение на вмъкване и наистина да ти го вмъква на текущата позиция или в края на списъка. В такива ситуации би имало значение и дали подредбата ти е дефинирана от сървъра (order by) или локално в имплементацията на TDataSet.

Linux isn't free, it's worthless.


Отговор