Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi hilfe bei sql (https://www.delphipraxis.net/56653-hilfe-bei-sql.html)

Hammurabi 9. Nov 2005 12:18

Datenbank: MySQL ODBC • Version: 3.51 • Zugriff über: ka

hilfe bei sql
 
also habe ein paar frage

1. habe über bde mine sql datenbank eingebunden und immer wenn ich auf die datenbank zugreife fragt der nach user und pw

2. ich will datensätze updaten also wenn id vorhanden dann update spalte 3 oder so wie frage ich das ab??

3. wie kann ich die tabelle leeren von meinem programm aus??

wäre dankbar wenn ihr mir helden könnt :wink: ich kann mich einfach mit sql nich anfreunden aber muß ja :roll:

rwachtel 9. Nov 2005 12:25

Re: hilfe bei sql
 
Zitat:

Zitat von Hammurabi
1. habe über bde mine sql datenbank eingebunden und immer wenn ich auf die datenbank zugreife fragt der nach user und pw

Ja, wo ist die Frage?
Zitat:

2. ich will datensätze updaten also wenn id vorhanden dann update spalte 3 oder so wie frage ich das ab??
SQL-Code:
UPDATE Tabelle SET Spalte3 = Wert WHERE PKField = ID
Zitat:

3. wie kann ich die tabelle leeren von meinem programm aus??
SQL-Code:
DELETE FROM Tabelle
P.S.: Bitte verwende doch demnächst einen aussagekräftigeren Titel und eine Frage pro Thread. Danke.

Hammurabi 9. Nov 2005 12:36

Re: hilfe bei sql
 
also sprich
Form1.Query1.SQL.Add('DELETE FROM TbTEST');
und für das andere dan der entsprechene quell code

ja bei 1. wäre schön wenn die abfrage nicht mehr kommen würde :oops:

ach ja also ich wurde immer in foren follgelapt wegen zu vielen kleinen themen sozusagen also wolte ich lieber ein großes kann ja dann wieder gelöscht werden

ansonsten erstmal denke hat geholfen :thumb:

dfried 9. Nov 2005 12:43

Re: hilfe bei sql
 
Zitat:

Zitat von Hammurabi
ja bei 1. wäre schön wenn die abfrage nicht mehr kommen würde :oops:

In der TDatabase-Komponente gibt es das Property "LoginPrompt" das muss du auf false setzen (setzt natürlich voraus, dass die in Params die notwendigen Parameter für den Login gesetzt hast ("USER NAME" und "PASSWORD")

Hammurabi 9. Nov 2005 13:34

Re: hilfe bei sql
 
:wiejetzt: kannst du mal bitte nen beispiel code für den LoginPrompt geben ich blicke da überhaupt nich durch :wall:

ach ja und noch was was würde schneller gehen alle datensätze zu vergleichen und zu updaten oder einfach alle neu an zu legen also wo ist nutzen aufwand besser und so??

BeerBear 9. Nov 2005 13:45

Re: hilfe bei sql
 
Zitat:

kannst du mal bitte nen beispiel code für den LoginPrompt geben
Das ganze lässt sich im Objektinspektor konfigurieren, aber wenn du das im Code machen willst.

Delphi-Quellcode:
Database.LoginPrompt := false;
Database.Params.Add('USER NAME=xxx');
Database.Params.Add('Password=xxx');
Dann sollts klappen.

shmia 9. Nov 2005 14:43

Re: hilfe bei sql
 
Zitat:

Zitat von Hammurabi
also sprich
Form1.Query1.SQL.Add('DELETE FROM TbTEST');
und für das andere dan der entsprechene quell code

Hier besteht die Gefahr, dass Form1.Query1.SQL schon einen Inhalt hat. => SQL Syntax Fehler
Deshalb:
Delphi-Quellcode:
Form1.Query1.SQL.Text := 'DELETE FROM TbTEST';
Form1.Query1.ExecSQL;

Hammurabi 9. Nov 2005 14:49

Re: hilfe bei sql
 
mmmmhhh... ich verstehe zwar was du mir jetzt damit sagen wilst aber über code get das nich bzw der fragt immernoch und über Objektinspektor habe ich garkeinen ansatz??

aber zumindestens bringt der code keinen fehler :lol:

@shmia ja danke aber das hatte :o ich schon querry clear und ausführen

BeerBear 9. Nov 2005 14:58

Re: hilfe bei sql
 
Der Code muss natürlich vor dem connect stehen.

Und zum Objektinspektor:

Also ganz langsam,

klicke erstmal deine Database Komponente an.

Jetzt siehst du deren Eigenschaften im Objektinspektor.

Und dort wiederum findest du die Eigenschaften LoginPromt und Params.

LoginPromt auf False setzen.

Und in die Params schreiben:
USER NAME=xxx
PASSWORD=xxx

( Für xxx setzt du natürlich jeweils deinen Benutzernamen und dein Passwort ein )
Fertig.

dfried 9. Nov 2005 15:11

Re: hilfe bei sql
 
Die Grundlegende Frage ist wahrscheinlich erst mal: Benutzt du überhaupt eine TDatabase-Komponente?

BeerBear 9. Nov 2005 15:22

Re: hilfe bei sql
 
Wenn mein Code oben keine Fehler erzeugt hat, gehe ich mal ganz stark davon aus. Oder? :gruebel:

Hammurabi 9. Nov 2005 15:32

Re: hilfe bei sql
 
@BeerBear ja also das habe ich jetzt alles gefunden und drinn aber get immer noch nicht/ fehler gibts auch nich

@dfried gute frage weil ich habe das database objekt erst angelegt um die abfrage weg zu bekommen sonst hat das alles schon ohne funktionirt

weiß ja nich ob ich da noch was verknüpfen muß oder so :gruebel:

danke schonmal für die hilfe :thumb: ich habe heute keine zeit mehr hoffe bekomme das morgen noch hin mit hilfe :wink:

dfried 9. Nov 2005 15:44

Re: hilfe bei sql
 
Zitat:

Zitat von Hammurabi
weiß ja nich ob ich da noch was verknüpfen muß oder so

Bei der Database hast du doch bestimmt das Property "Databasename" gesetzt. Und der Name den du da eingetragen hast, den musst du bei deinen Queries/Tables als "DatabaseName" auswählen (im OI)

BeerBear 9. Nov 2005 16:13

Re: hilfe bei sql
 
Dann stellst du wohl die Vebindung garnich über die Database Komponente her.

Also machst dus am besten, wie von dfried beschrieben und dann
Delphi-Quellcode:
Database.connected := true
Dann sollte die Verbindung hergestellt sein und keine Abfrage mehr erscheinen.

Hammurabi 10. Nov 2005 10:03

Re: hilfe bei sql
 
Delphi-Quellcode:
procedure TForm1.Database1Login(Database: TDatabase;
  LoginParams: TStrings);
begin
  Database.LoginPrompt := false;
  Database.Connected := false;
  Database.Params.Clear;
  Database.Params.Add('USER NAME=devil');
  Database.Params.Add('PASSWOTRD=shop');
  Database.connected := true;
end;
also damit kommt das immernoch wenn ich dann mit

Delphi-Quellcode:
  Form1.Query1.ExecSQL;
in die datenbank schreiben will

ja und sonst habe ich immer die datenbank quelle bei den objekten angegeben

dfried 10. Nov 2005 10:05

Re: hilfe bei sql
 
Wenn das per Cut&Paste genau dein Quellcode ist, dann liegt der Fehler in folgender Zeile:
Delphi-Quellcode:
  Database.Params.Add('PASSWOTRD=shop');
Es muss PASSWORD statt PASSWOTRD heissen...

Hammurabi 10. Nov 2005 12:08

Re: hilfe bei sql
 
sorry wars nich ich bkomme ja auch keinen fehler weder vorher noch nacher

ich hasse sql :wall:

BeerBear 10. Nov 2005 12:15

Re: hilfe bei sql
 
Hast du denn jetzt den Databasename angegeben? In der Database Komponente und den Querys und Tables?

MPirnstill 10. Nov 2005 13:12

Re: hilfe bei sql
 
Zitat:

Zitat von Hammurabi
@dfried gute frage weil ich habe das database objekt erst angelegt um die abfrage weg zu bekommen sonst hat das alles schon ohne funktionirt

weiß ja nich ob ich da noch was verknüpfen muß oder so :gruebel:

Hi!

Nachdem du das TDatabase-Objekt eingefügt hast, solltest du noch in der Eigenschaft "DatabaseName" ein frei wählbaren Name eintragen. Diesen Namen muß du dann bei allen anderen DB-Objekten (TTable, TQuery ..) ebenfalls in Eigenschaft "DatabaseName" eintragen. Ich vermute mal, daß du bei denen TQuery noch direkt den AliasName verwendest, dadurch werden die DB-Abfragen nicht über das TDatabase-Objekt geleitet.

So ungefähr müßte das stimmen. Jedenfalls, wenn die Objekte über den DatabaseName nicht wissen, daß sie "zusammengehören" reagiert die TTable bzw. TQuery auf die Einstellungen in TDatabase nicht.

edit: Hätte den Thread mal bis zu Ende lesen sollen. BeerBear hat's ja schon in etwas kürzerer Form erwähnt.

Hammurabi 24. Nov 2005 10:32

Re: hilfe bei sql
 
so leute funktioniert jetzt alles der einzige fehler war das ich im database objekt die datenbank als alias benutzt habe anstatt also databasename einzutragen :wall:

also nochmal großes danke an alle :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:36 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz