Hier die SQL Syntax der Abfrage in ACCESS:
PARAMETERS paraOldName Text ( 255 ), paraNewName Text ( 255 );
UPDATE tabDateiliste SET tabDateiliste.Pfad = REPLACE(tabDateiliste.Pfad,[paraOldName],[paraNewName])
WHERE ((tabDateiliste.Pfad) Like [paraOldName] & '*');
aber ich denke, das Thema hat sich erledigt. Ich habe gestern noch viel gegoogelt und habe herausgefunden, das das der ODBC-Treiber nicht macht. Es ist auch nicht möglich, ein Workaround zu schreiben, in dem man eine eigene REPLACE-Funktion in Access programmiert (in ein Modul). Die selbstgeschriebene Funktion ist ODBC nicht bekannt. Das komische ist, in ACCESS geht alles. Programmtechnich im BCB über eine ADOStoredProc - Komponente nicht. Ich kann in der Komponente noch einen anderen Provider auswählen, vielleicht geht es mit einem anderen Treiber.
lg Stephan
Bedeutet Async beim ADO Recordset nicht, das er jeweils nur die gesetzte CacheSize fetched und den Rest dann "auf Anfrage" (sprich, wenn man weiterscrolled) holt?
Row ist doch die Zeile. Da weiß man doch eigentlich, wieviele Spalten man im Select stehen hat?!? BZW wieviele die Tabelle hat...
Sonst: mysql_num_fields()
Falls du die Anzahl der Zeilen des Ergebnis haben willst musst du durch das result iterieren und dir jeweils die row ausgeben:
MYSQL_RESULT* result= //query hier! SELECT a,b,c FROM d;
MYSQL_ROW row;
while(result != NULL && (row=mysql_fetch_row(result))!=NULL) {
// row[0] => a
// row[1] => b
// row[2] => c
}
http://dev.mysql.com/doc/refman/5.1/en/mysql-fetch-row.html
mfg
xXx
Sowas gibs nach meinen Kenntnissen nich...es gibt aber ab Access 2000 unter Extras einen Punkt "DB beim Schließen komprimieren"...da kannst du die DB höchstens komprimieren lassen, wenn du sie schließt und du natürlich Exklusivrechte hast...
Und ohne exklusiv Rechte kannst du erst gar nicht komprimieren. Jede andere Makro oder VBA Komprimierungsroutine macht auch nix weiteres als den Menübefehl zu benutzen und dazu braucht man auch exklusiv Rechte...
MFG
Ich bekomme beim erstellen Fehler:
Fehler 13 error C2491: 'Sqlite3_Init': Definition von Funktion für dllimport nicht zulässig d:\dokumente\visual studio 2005\projects\c++\test\sqlite\sqlite\sqlite\tclsqlite.c 2408
Fehler 14 error C2491: 'Tclsqlite3_Init': Definition von Funktion für dllimport nicht zulässig d:\dokumente\visual studio 2005\projects\c++\test\sqlite\sqlite\sqlite\tclsqlite.c 2416
Fehler 15 error C2491: 'Sqlite3_SafeInit': Definition von Funktion für dllimport nicht zulässig d:\dokumente\visual studio 2005\projects\c++\test\sqlite\sqlite\sqlite\tclsqlite.c 2417
Fehler 16 error C2491: 'Tclsqlite3_SafeInit': Definition von Funktion für dllimport nicht zulässig d:\dokumente\visual studio 2005\projects\c++\test\sqlite\sqlite\sqlite\tclsqlite.c 2418
Fehler 17 error C2491: 'Sqlite_Init': Definition von Funktion für dllimport nicht zulässig d:\dokumente\visual studio 2005\projects\c++\test\sqlite\sqlite\sqlite\tclsqlite.c 2421
Fehler 18 error C2491: 'Tclsqlite_Init': Definition von Funktion für dllimport nicht zulässig d:\dokumente\visual studio 2005\projects\c++\test\sqlite\sqlite\sqlite\tclsqlite.c 2422
Fehler 19 error C2491: 'Sqlite_SafeInit': Definition von Funktion für dllimport nicht zulässig d:\dokumente\visual studio 2005\projects\c++\test\sqlite\sqlite\sqlite\tclsqlite.c 2423
Fehler 20 error C2491: 'Tclsqlite_SafeInit': Definition von Funktion für dllimport nicht zulässig d:\dokumente\visual studio 2005\projects\c++\test\sqlite\sqlite\sqlite\tclsqlite.c 2424
Ahhh! Alles klaro. Ok, weiß bescheid. Der Treiber den ich verwendet hatte unterstützt die Funktion nicht...
Hab das mal mit MySQL ausprobiert, dort funktioniert das.
Wunderbar. Ich bedanke mich bei dir!
Gruß
Matscher
Hallo,
Danke für die Antwort, jetzt habe ich noch ne dumme Frage, mit welchem Compiler compilieren ich das Programm bzw. welcher editor eignet sich dafür ... bin noch auf der Suche nach etwas geeignetem ... ??
Also womit das Programm anschließend unter Linux ( z.B. Debian etch ) läuft ??
Danke im Voraus
Gruß
Alex
Im kommerziellen Umfeld hängen Entscheidungen für ein Produkt oder ein anderes oft nicht von den Features ab. Es gibt Applikationen, da reichen einfache Dateien oder Mysql oder Postgresql, aber es wird dennoch Oracle genommen. Der Grund ist einfach, daß da ein grosser Name dahinter steckt und daher der Entscheider auf jeden Fall auf der sicheren Seite ist. Wenn die Daten aus welchem Grund auch immer weg sind, dann kann sich der Entscheider auf Oracle berufen. Bei kostenlosen alternativen wie Postgresql ist er eher selbst in der Verantwortung.
Ähnlich verhält es sich mit Mysql. Es gibt für Mysql kommerziellen Support und auch wesentlich mehr Billighoster, die für Webseiten Mysql anbieten. Wenn ich einfach mal eine Vereinshomepage mit Datenbank mache, dann bietet es sich an, Mysql zu nehmen, da ich da für wenig Geld eine Supportete Umgebung erhalte.
Technisch würde ich immer Postgresql bevorzugen.
Danke für den Tipp. Ich hab noch eine andere Möglichkeit gefunden:
select count(*), max(created_at) into anzahl,upd from usages where feature_id=nextid;
So spart man sich noch ein Select.