Am 10.08.2009 um 12:53 schrieb Florian Ubr:

Probier mal ein db.commit nach dem db.SQLExecute.

es fehlte hier sowohl das db.commit als auch die Frage nach dem db.connect. Das musste auf die Nase fallen.
Jetzt bin ich ein ganzes Stück weiter.
Vielen Dank nochmal für den "schnellen Blick".

Gruß
Roland

Ich hab zwar schon länger nix mit Datenbanken in REALbasic gemacht, aber früher hats das glaub ich immer gebraucht.

Ansonsten schau doch auch mal ob im db.errorcode was steht.

Flo

Am 09.08.2009 um 16:11 schrieb Roland Quadstege:

die Fragen hören nicht auf - hier wieder eine: Ich möchte in eine bereits bestehende Datenbank eine neue Tabelle einfügen. Dazu habe ich mal versucht, über ein getopenfolder eine passende Datenbank auszuwählen. Falls ich nichts auswähle, passiert hier irgendwas (eine Datenbank "adressen_2.rsd" wird angelegt). Aber falls ich was wähle, so versuche ich eine neue Tabelle in diese Datenbank einzufügen. Aber wenn ich diese Datenbank nachher mal ins Projekt ziehe, steht nichts neues drin. Nur die Tabelle(n), die vorher auch schon drin war(en). Woran liegt das? Habe ich da was nicht richtig gelesen - oder nur wieder Tomaten auf den Augen.

dim db as REALSQLDatabase
db=new REALSQLDatabase
dim f as FolderItem
f=GetOpenFolderItem("")
if f=nil then
  f= new FolderItem("adressen_2.rsd")
  db.DatabaseFile=f
  MsgBox str(db.CreateDatabaseFile)
if db.CreateDatabaseFile then 'wenn die Datenbank angelegt werden könnte
    if db.Error=false then
db.SQLExecute ("create table daten (da_firma varchar, da_anrede varchar, da_id Integer primary key)")
      MsgBox "die Datenbank wurde erzeugt ("+db.errormessage +")."
    else
      MsgBox "hat nicht geklappt ("+db.ErrorMessage+")"
    end if
  end if
Else 'die Datenbank ist vorhanden
  db.DatabaseFile=f
  if db.error=false then
db.SQLExecute ("create table daten (da_firma varchar, da_anrede varchar, da_id Integer primary key)") MsgBox "in der Datenbank "+f.name+ "wurde eine neue Tabelle erzeugt ("+db.errormessage +")."
  else
    MsgBox "hat nicht geklappt ("+db.ErrorMessage+")"
  end if
end if

jemand eine Idee???

Gruß
Roland




Antwort per Email an