/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
SQL-Insert
Fra : PH


Dato : 06-12-01 23:46

Jeg er nybegynder i SQL!!
Jeg bruger Interbase.
1) Jeg kan godt finde ud af at benytte INSERT, men hvordan undgår jeg at
posten er der i forvejen?

Tak-Peder





 
 
Thomas Riedel (07-12-2001)
Kommentar
Fra : Thomas Riedel


Dato : 07-12-01 17:47

Jeg tror ikke, at man kan gøre det i et SQL statement.
Du kan bruge

Try
query1.execsql;
except
// Undertrykker fejlmeddelelse
end;

eller:

tjekke om recorden findes:

query1.sql.add('select * from table1 where field1 ='+val);

query1.open;
if query1.eof then
begin
query2.sql.add('insert into table1 (field1) values('+val+')');
query2.execsql;
end;


jeg bruger selv følgende små rutiner meget:

function sqlfunc(sqlstr : string) : string;
begin
with query1, sql do
begin
clear;
add(sqlstr);
open;
result := fields[0].asstring;
end;
end;

procedure dosql(sqlstr : string);
begin
with query1, sql do
begin
clear;
add(sqlstr);
execsql;
end;
end;

så kan det skrives lidt mindre bøvlet:

if sqlfunc('select * from table1 where field1 ='+val) = '' then
dosql('insert into table1 (field1) values('+val+')');

Kan absolut anbefales


--
Thomas Riedel, LogiHouse
"PH" <peder@hanghoej.dk> wrote in message
news:3c0ff543$0$81683$edfadb0f@dspool01.news.tele.dk...
> Jeg er nybegynder i SQL!!
> Jeg bruger Interbase.
> 1) Jeg kan godt finde ud af at benytte INSERT, men hvordan undgår jeg at
> posten er der i forvejen?
>
> Tak-Peder
>
>
>
>



Michael X (08-12-2001)
Kommentar
Fra : Michael X


Dato : 08-12-01 03:46


Se evt. mit svar på din mail postet klokken 20:30

Mvh.
Michael X

>Jeg er nybegynder i SQL!!
>Jeg bruger Interbase.
>1) Jeg kan godt finde ud af at benytte INSERT, men hvordan undgår jeg at
>posten er der i forvejen?
>
>Tak-Peder
>
>
>


Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste