| Autor |
Beitrag |
Mausi
      
Beiträge: 21
|
Verfasst: Mi 04.06.03 11:20
with IBDataset1 do
begin
close;
modifysql.Clear;
modifysql.add('Update PERSONAL set SUCHNAME='+#39+
edsuchname.text +#39+ ' where personalnr=1');
...
end;
Die Frage jetzt: Mit welchem Befehl starte ich jetzt die Update Anweisung?
|
|
hansa
      
Beiträge: 3079
Erhaltene Danke: 9
|
Verfasst: Mi 04.06.03 11:23
Setz in der with Schleife zuerst active := false; und zum Schluß active := true; Das geht dann. Oder Du kriegst Deine Fehlermeldungen.
Edit: Moment ich sehe gerade, da steht schon ein close. Dann nimm zum Schluß "open". Das ist aber dasselbe.
_________________ Gruß
Hansa
|
|
UGrohne
      

Beiträge: 5502
Erhaltene Danke: 220
Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
|
Verfasst: Mi 04.06.03 11:27
Das wird so wahrshceinlich nicht funktionieren, da die Dataset-kompo bei sowas explizit aufgerufen werden muss. Dataset ist am besten mit einem Grid zu verwenden, da die gut zusammenarbeiten. ModifySQL solltest Du nicht verwenden, sondern standardmäßg erstellen lassen. Dann kannst Du ein Dataset1.Edit aufrufen und die neuen Werte in die Felder eingeben und dann ein Post o.ä. aufrufen.
Was Du machen willst würde ich Dir mit einer IBSQL-Komponente empfehlen, da das Zeug der Eigenschaft SQL.Text zuweisen und ExecQuery aufrufen. Ist besser.
|
|
Mausi 
      
Beiträge: 21
|
Verfasst: Mi 04.06.03 12:07
Titel: Also hab das jetzt mit IBSQL gemacht
Funktioniert auch bis zum execquery
Kommt dann nur Fehlermeldung: Klasse EIBINTERBASEError aufgetreten : Meldung arithmetic exception ....
Das SQL KOmmando hab ich aber schon im SQL System getestet das läuft eins a durch.

|
|
UGrohne
      

Beiträge: 5502
Erhaltene Danke: 220
Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
|
Verfasst: Mi 04.06.03 13:28
Welches Zeichen ist denn #39 ?
Bin zu fauo, anchzuschauen
|
|
Mausi 
      
Beiträge: 21
|
Verfasst: Mi 04.06.03 13:49
#39 bedeutet soviel wie Hochkomma
dient nur dafür das Delphi das Zeichen nich für sich beansprucht. 
|
|
Lemmy
      
Beiträge: 792
Erhaltene Danke: 49
Windows 7 / 10; CentOS 7; LinuxMint
Delphi 7-XE10.1, VS 2015
|
Verfasst: Mi 04.06.03 14:35
Hi Mausi,
hast Du den richtigen Character Set in der DB-Komponente eingestellt?
Grüße
Lemmy
|
|
Mausi 
      
Beiträge: 21
|
Verfasst: Mi 04.06.03 14:45
In welcher Komponente kann man das einstellen.
Bzw. Wie?
|
|
Udontknow
      
Beiträge: 2596
Win7
D2006 WIN32, .NET (C#)
|
Verfasst: Mi 04.06.03 14:54
Hi!
Benutzt du denn die BDE? Dort wird ein entsprechnder Language Driver im Alias in der BDE eingestellt.
Alternativ könntest du es einfach mal mit Anführungsstrichen (") anstelle von Hochkommata probieren.
Cu,
Udontknow
|
|
Lemmy
      
Beiträge: 792
Erhaltene Danke: 49
Windows 7 / 10; CentOS 7; LinuxMint
Delphi 7-XE10.1, VS 2015
|
Verfasst: Mi 04.06.03 15:59
| Mausi hat folgendes geschrieben: | In welcher Komponente kann man das einstellen.
Bzw. Wie? |
Gehe ich recht in der Annahme dass Du die IBX verwendest?
WEnn ja dann doppelklick auf die IBDatabase-Komponente auf Deinem Formular. Dort kannst Du dann alles einstellen um mit der DB zu connecten. Unter Character Set stellst Du dann eben den entsprechenden Character Set ein, den Du beim Erzeugen der DB gewählt hast.
Grüße
Lemmy
|
|
Mausi 
      
Beiträge: 21
|
Verfasst: Do 05.06.03 08:08
Und wie finde ich jetzt heraus welcher Zeichensatz der richtige ist ?
|
|
Lemmy
      
Beiträge: 792
Erhaltene Danke: 49
Windows 7 / 10; CentOS 7; LinuxMint
Delphi 7-XE10.1, VS 2015
|
Verfasst: Do 05.06.03 08:39
Hi,
nimm Dir ein Tool wie IBConsole und lass Dir die Metadaten der Datenbank anzeigen. In der ersten Zeile sollte dann so was stehen:
Quelltext 1: 2: 3:
| /* CREATE DATABASE 'localhost:d:\tempcs\service\data\cora.fdb' PAGE_SIZE 4096
DEFAULT CHARACTER SET ISO8859_1 */ |
Diesen Character Set gibts Du dann in der IBDatabase an (Doppelklick auf die Komponente). Schau Dich mal auf meiner Seite um, da gibts ne Menge Tutorials bzgl. Interbase und IBX. Dann sollten solche Probleme eigentlich nicht mehr auftreten....
Grüße
Lemmy
|
|
MAlsleben
      
Beiträge: 303
W2k,WinXP
D3 - DXE3 Enterprise
|
Verfasst: Do 12.06.03 09:04
Ich habe die gleichen Fehlermeldung bei Eingeben von Umlauten gehabt.
Lösung bei mir:Die Datenbank habe ich mit default Charakterset WIN1252 erstellt und in der IBDatabase Kompo genau den gleichen Sprachteiber ausgewählt. Dann hat's funktioniert.
_________________ Viele Wege führen nach Rom.
|
|