Seite 1 von 1

Microsoft MSSQl Server verbinden (nicht per ODBC)

Verfasst: 22.01.2008 18:53
von Onkel-Till
Hallo,

ich habe nun einige Stunden gesucht leider kein Ergebniss gefunden, bzw immer wieder wird den Leute der Weg per ODBC gezeigt.

Ich habe eine Applikation geschrieben die zur Zeit auf eine MySQL Datenbank zugreift per libmysql.dll.

Nun muss ich diese Anwendung auf MSSQL umbauen. Wie gesagt per ODBC ist dies kein Problem ich möchte dies jedoch gerne per DLL machen. Gibt es einen Nativen MsSQL Client den jemand schon mal hier benutzt hat?

Gruß und danke für die Hilfe.
Till

Verfasst: 22.01.2008 21:45
von bobobo
vielleicht hilft folgender link irgendwie ein Stückchen weiter

da gehts zwar um php , allerdings werden dort ein paar weitere
dll's aufgelistet die wohl nötig sind für den zugriff auf MSSQL-DBMS

http://us2.php.net/manual/de/ref.mssql.php

(ich kenne übrigens keinen Grund auf ODBC zu verzichten .. ODBC
geht auch OnTheFly für mssql-odbc-connects)

Verfasst: 22.01.2008 22:24
von Kiffi
@Onkel-Till:

mit dem PureDispHelper und ADO kannst Du einen SQL-Server relativ
einfach konnektieren:

http://www.purebasic.fr/german/viewtopic.php?t=12701
(einfach mal in's ADO-Beispiel schauen; ist zwar für Access-MDB, lässt sich
aber problemlos auf SQL-Server ändern)

Falls es Probleme gibt: Einfach nochmal nachfragen.

@bobobo:
bobobo hat geschrieben:ich kenne übrigens keinen Grund auf ODBC zu verzichten
kleiner Erfahrungsbericht meinerseits (ODBC-unerfahren): vor ein paar
Tagen sollte ich ein kleines Tool zusammenklöppeln, das zyklisch ein paar
Daten aus einem SQL-Server auslesen und analysieren sollte. Der
Einfachheit halber habe ich hierzu eine ODBC-Verbindung und die nativen
Database-Funktionen von PB verwendet. Als ich dann die Geschwindigkeit
gesehen habe, mit der das Ganze ablief, war ich gelinde gesagt entsetzt.
Ein Durchlauf dauerte ganze 200 Sekunden. Als ich den Datenzugriff dann
auf ADO umgestellt hatte, lief ein Durchlauf innerhalb von 1er Sekunde (!)
ab.

Kann sein, dass ich da irgendwas bei der Einrichtung der ODBC-
Verbindung fehlkonfiguriert habe. Wenn ich nochmal so ein Projekt
erstellen sollte (und die entsprechende Zeit zum Testen habe) werde ich
das noch einmal nachprüfen.

Grüße ... Kiffi

Verfasst: 23.01.2008 16:24
von bobobo

Verfasst: 23.01.2008 17:08
von bobobo
ado mit mssql ist ca 4mal schneller im lesen bei nutzung des

ConnectionString ="Provider=sqloledb;Data Source="+myServerAddress+";Initial Catalog="+myDataBase+";User Id="+myUsername+";Password="+myPassword+";"

:)

nutzerfreundlich ist das ado-zeugs allerdings nicht gerade /:->

Verfasst: 23.01.2008 17:53
von Onkel-Till
Vielen Dank. Tool habe ich innerhalb von 40min fertig gehabt. War im Grunde ein kleines Datenbank Replikationstool.
Von einem MSSQL Server sollten halb automatisch bestimmte Daten auf einen MYSQL Server geschoben werden.

40 min ich bin immer wieder begeistert von PureBasic

Ich habe das eben auch mal (als Spass probiert) per ODBC die Daten von der MSSQL Datenbank zuhohlen. Unglaublicher Zeit verlust.
ODBC ca. 3min
ADO unter 10sek

:-)

Verfasst: 23.01.2008 20:47
von bobobo
hab mal n bischen rumgelesen und folgendes gefunden
ADO ist schneller weil es die odbc-verbindung benutzt.
versteht das jemand?

wenn odbc-langsamer ist als ado aber ado schneller (weil es die odbc-
verbindung benutzt ) dann bekomm ich beim weiterdrübernachdenken
flott n knoten ins denkerhirn.