Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

ASP: dsn oder dsn-freier Zugriff auf Datenbank??





Frage

Hallo liebe Leute, hat jemand vielleicht eine Erklärung oder Gründe, warum man eine Datenbankverbindung entweder über einen dsn oder dsn-frei macht?? Wo liegt denn der Vorteil bei welcher Verbindung? Mfg Bendi

Antwort 1 von teccer

Hey Du

nimm bitte keine DSN. Pass auf wenn Du direkt über eine sog. Verbindungszeichenfolge arbeitest, also nicht mit ner DSN, dann spricht Du die DB, SQL-Server oder was auch immer direkt an. Bei ne DSN sieht das ungefahr so aus:

MSDASQL >> ODBC >> DB

Das Mittelstück spartst Du dir also wenn du irekt über nen Treiber gehst, ist schneller. Es gibt nur einen Vorteil der DSN. Und zwar speichert du die verbindungszeichenfolge an einem punkt. Dumm ist nur wenn du den pfad änderst must du deinem hoster die neue dsn schicken, aber in asp hast du genug möglichkeiten die connection an einem zentralen punkt zu speichern, so das du sie nur ein mal schreiben musst.

für ne access-db sieht das dann in asp so aus:

DB = "Data Source=" & _
Server.MapPath("../.....mdb")
set CN = Server.CreateObject("ADODB.Connection")
CN= "Provider=Microsoft.Jet.OLEDB.4.0;" & DB
CN.Open CN
Set RS = Server.CreateObject("ADODB.Recordset")

SQL = "Select......"
RS.Open SQL, CN

die Data-Source für den SQL-Server sieht so aus:

connString = "PROVIDER=MSDASQL;"
connString = connString & "DRIVER=SQL Server;"
connString = connString & "SERVER=sql.test.de;"
connString = connString & "UID=USERNAME;"
connString = connString & "PWD=PASSWORT;"
connString = connString & "DATABASE=DATENBANKNAME;"

Set CN = Server.CreateObject("ADODB.Connection")
CN.Open connString
Set RS = Server.CreateObject("ADODB.Recordset")

und dann halt wie oben SQL usw. usw.


Gruß

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: