Noch nen paar Fragen:
Momentan benutze ich diesen Connection String:
Driver={Microsoft Paradox Driver (*.db )};
DriverID=538;
Fil=Paradox 5.X;
DefaultDir=c:\test\;
Dbq=c:\test\;
PWD=test;
...ist der "Microsoft Paradox Driver (.db)" auf jedem Windows System verfügbar ?
Ich hab auf diesem Rechner hier noch "Microsoft Paradox-Treiber (.db)" drauf, nicht dass das auf deutsch-sprachigen Systemen evtl. nicht läuft
...und: Kann man irgendwie beim Connection String nen Zeichensatz angeben oder so ? - Momentan werden Umlaute nicht korrekt eingelesen
Hi zusammen ich bin grade dabei ein wenig Excel zu vergewaltigen! Ich nutze Excel als Datenbank (naja nur sehr bedingt) Ich will jetzt eine Funktion in eine spalte schreiben. z.B. =max(A10:A1000)
Soll mir also den maximalen Wert einer Spalte zurück geben. Ich arbeite momentan so mit Excel:
sSql.Format("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s",
sDriver, sExcelFile, sExcelFile);
database.OpenEx(sSql,CDatabase::noOdbcDialog)
jetzt kann ich so Befehle senden.
sSql = "INSERT INTO Exportiert (Auftragsnummer) VALUES(\'=max(A10:A1000)\')";
database.ExecuteSQL(sSql);
Das Beispiel geht so auch, aber nur wenn ich die Spalte als TEXT mache, dann macht er mir aber ein ' davor und interprätiert es einfach als Text. Will ich das an eine NUMBER Spalte schicken geht es nicht. Bricht eifach ab. Wie kann ich jetzt in ne NUMBER Spalte solche Funktionen übertragen?
Vielen Dank schon im Voraus an alle die sich Gedanken machen.
Zur Erklärung:
DESC und ASC sind Sortierbefehle. Diese sortieren das Feld aufsteigend/absteigend welches man in ORDNER BY definiert.
Dadurch ergibt sich das es nach ORDNER BY kommt und die definition sagt das ORDER BY auch nicht am Anfang kommen darf.
Beim Sql-Server (MSDE 2000) funktioniert deine Version nicht -> offenbar Oracle-spezifischer Syntax beim IN-Operator.
Meine Version läuft in geschätzt <0,1s. Mein Tool (DbaMgr2k) zeigt leider keine Zeiten an.
entelechie schrieb:
IcemanX schrieb:
...komisch ist nur das ich bei numerischen Feldern Text eingeben kann...
sqlite speichert alles als zeichenkette. du kannst bei einem insert
einem int feld "hallo" zuweisen ohne dass die db meckert.
finde ich nicht sehr sinnvoll von SQLite!
update database configuration for DB2 using logfilsiz 5000 logprimary 2 logsecond 10;
Was die sich bei logfilsiz wohl überlegt haben
OK, hast mir sehr geholfen Jetzt funzt es wieder.
Hi,
ich habe einen Service geschrieben, in dem ich auf eine Access- DB zugreife. Bisher habe ich immer alles lokal getestet und es war kein Problem und alles rannte. Habe mir lokal eine Kopie der Datenbank erstellt.
Jetzt habe ich die original Access-DB integriert, d.h. habe den Pfad geändert. Die DB liegt auf einem Netzlaufwerk. Seit diese Umstellung kann mein Service die DB nicht mehr finden. Folgender Fehler wird immer ausgegeben:
"[4036] System.Data.Odbc.OdbcException: ERROR [HY024] [Microsoft][ODBC Microsoft Access Driver] '(unbekannt)' ist kein zulässiger Pfad. Stellen Sie sicher, dass der Pfad richtig eingegeben wurde und dass Sie mit dem Server, auf dem sich die Datei befindet, verbunden sind. "
Aber die Datei ist vorhanden. Und ich habe noch weitere Tests mit anderen Netzlaufwerken gemacht und auch da funzte das net.
Über die .NET Konfiguration habe ich die Sicherheitseinschränkung für lokales Intranet geändert, indem ich alles erlaubt habe.
Hat irgendwer eine Idee warum der meine DB nicht findet???????
Ich verstehe es echt net....
Hallo!
Mit welchen SQL-Befehlen geht das?
Das (local) macht mir nämlich Probleme, aber ich kriegs nicht umbenannt (Enterprise Manager).
Außerdem habe ich hier den Fall dass auf den PCs andere Programme ebenfalls die MSDE nutzen - und deswegen will ich sozusagen mein "eigenes Revier" abstecken, mit einer eigenen Instanz.
Außerdem hat man es ohne das sa-Passwort nicht wirklich leicht.
Du musst danach den Server neu starten, oder einfacher:
FLUSH PRIVILEGES;
nebenbei sein noch auf dieses hingewiesen:
mysql> SET PASSWORD FOR 'bob'@'%.loc.gov' = PASSWORD('newpass');
That is equivalent to the following statements:
mysql> UPDATE mysql.user SET Password=PASSWORD('newpass')
-> WHERE User='bob' AND Host='%.loc.gov';
mysql> FLUSH PRIVILEGES;
Das Problem ist also, dass Du zu einem Photo mehrere Personen angeben (können) willst?
Mit fällt der Name für diese Art Tabelle grad nicht ein, aber Du brauchst eine dritte Tabelle, in der Du die jeweils den Primärindex der Tag-Tabelle und der Personen-Tabelle abspeicherst. Hier ist ein zusammengesetzter Primärschlüssel zu empfehlen (ausnahmsweise ).
So in die Richtung:
BildId PersId
1 1
1 2
2 1
2 3
Dann kannst Du mit einem Select auf die BildId in dieser Tabelle alle PersIds ermitteln und diese dann aus der Personentabellen holen.
Tanzfreak schrieb:
SELECT name FROM sqlite_master
WHERE type='table'
ORDER BY name;
1000 Dank.... genau das was ich gesucht hab. Muss ich vorher beim durchlesen der FAQ von SQLite irgendwie überlesen haben. [Das kommt davon wenn die Augen schneller sind als das Gehirn!]
2 Links als kleine Ergänzung:
MSDN: SQL - Server
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tsqlref/ts_tsqlcon_6lyk.asp
Oracle Doku:
http://www.oracle-10g.de/oracle_10g_documentation/index.htm
EDIT: IBM DB2 *.pdf - Handbücher
http://www.uni-kassel.de/hrz/manuals/db2/
oder
https://aurora.vcu.edu/db2help/db2s0/frm3toc.htm
Danke für euer reges interesse:
1.) ohne Umlaute. Wenn ich Dich richtig verstehe: Ich war mal faul und hab dazu CString benutzt:
CString strFieldName = "Datenträger-Nr";
strFieldName.OemToAnsi();
Das Ergebnis war merkwürdigerweise das Gleiche wie vorher.
2.) ohne Bindestrich findet er das Feld gar nicht "Unbekanntes Feld...."
@KlausB:
gebracht hat es das Einschließen in eckige Klammern []. Merkwürdig: ich hatte es in meinem DBTool gestern wirklich auch so versucht, da schien es nicht zu gehen. Wenn du jetzt nicht nochmal nachgehakt hättest hätte ich das jetzt als gesichertes Wissen abgespeichert
Ich sollte diesen Fall wohl wirklich als DB-besonderheit bei ACCESS irgendwie gesondert behandeln....
Vielen Dank @all