r9
Nybegynder
13. februar 2003 - 19:31
Der er
9 kommentarer og 1 løsning
TSQLConnection & TSQLQuery
Jeg bruger TSQLConnection & TSQLQuery fra dbExpress, og vil gerne udføre nogle sql-statments. Hvordan får jeg udført denne simple kode? sql := 'select * from kunde'; SQLQuery.SQL.Clear; SQLQuery.SQL.Add(sql); Og hvordan bruger man PrepareStatement?
Annonceindlæg fra Barco
13. februar 2003 - 19:42
#1
sqlquery.open Hvis du vil inserte,delte,update er der sqlqyery.execsql Stoney
13. februar 2003 - 19:42
#2
der = det Stoney
r9
Nybegynder
13. februar 2003 - 19:49
#3
hmm. Dette virker ikke: SQLQuery.Open; sql := 'select * from kunde'; SQLQuery.SQL.Clear; SQLQuery.SQL.Add(sql); SQLQuery.ExecSQL(true); while not SQLQuery.Eof do begin res := SQLQuery.FindField('ID'); ShowMessage(res.AsString); SQLQuery.Next; end; Det bliver kastet en "missing query"....
13. februar 2003 - 20:15
#4
with sqlquery do begin with SQL do begin Clear; Add('SELECT * from kunde'); end; Open; end; Stoney
r9
Nybegynder
13. februar 2003 - 21:03
#5
Hvorfor skal "Open" kaldes efter ExecSQL?
13. februar 2003 - 21:18
#6
Det har jeg heller ikke sagt. ExecSQL bruges ved insert,delete,update. Altså kommandoer der IKKE returnere et recordset. Open bruges ved select. Stoney
r9
Nybegynder
13. februar 2003 - 21:25
#7
Ok, nu er jeg med. Kan der ikke lade sig gøre at lave en database klasse uden at man smider TSQLConnection og TSQLQuery på en form? F.eks: unit Database; interface uses DBXpress, SqlExpr; type TDatabase = class //database klasse private mySQLConnection: TSQLConnection; SQLQuery: TSQLQuery; public function doSelect(SqlStr : String): String; constructor create(); end; implementation constructor TDatabase.create(); begin mySQLConnection.Connected := true; SQLQuery.SQLConnection := mySQLConnection; end; function TDatabase.doSelect(SqlStr : String): String; begin Result := ''; SQLQuery.SQL.Clear; SQLQuery.SQL.Add(SqlStr); SQLQuery.Open; end; end. Når jeg kalder metoden, så får jeg en fejl: EAccessViolation with message 'Access violation at adress.....
r9
Nybegynder
13. februar 2003 - 21:27
#8
Jeg ønsker en unit uden form, som håndterer database adgang.
13. februar 2003 - 22:53
#9
Du kan lave et datamodule File->New->DataModule Stoney
r9
Nybegynder
14. februar 2003 - 11:58
#10
takker
Kurser inden for grundlæggende programmering