ASPNL logo (1 kb)
Tuesday, September 07, 2010




Microsoft MVP

.NET Codewise Community
<< vorige | overzicht | volgende >>

Een database openen

Om met een database te kunnen communiceren, moeten we een database connectie hebben. Om deze te maken bevat ADO het Connection object. Nadat we een Connection object hebben aangemaakt, openen we een database met de Open methode. Hierbij vermelden we de database die we willen openen in een zogenaamde ConnectionString.

Een ConnectionString maken

In de ConnectionString specificeren we het type database, de plaats van de database en de database naam. We kunnen eventueel ook een gebruikersnaam en password opgeven. We kunnen ook een gebruikersnaam en password opgeven bij de Open methode. Doen we dit, dan worden eventuele waarden in de ConnectionString genegeerd. Een ConnectionString ziet er als volgt uit:

SQL Server
Provider=sqloledb;Data Source=MijnSQLServer;Initial Catalog=MijnDB;User Id=ik;Password=uhm;

MS Access
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\databases\MijnDB.mdb;

Lees voor meer informatie het artikel De snelste database verbinding, of ga naar http://www.able-consulting.com/ado_conn.htm voor een lijst met verschillende ConnectionStrings voor verschillende databases.

Voorbeeld

In het onderstaande voorbeeld openen we een database en kijken we of het openen geslaagd is. We hebben de ConnectionString in het Application object opgeslagen, zodat we die niet telkens opnieuw moeten maken. Anders zouden we ook alle pagina's moeten herschrijven als we met een andere database zouden gaan werken.

openconn.asp
<%
Option Explicit

Dim objConn
Dim strResultaat

'Maak Connection object
Set objConn = Server.CreateObject("ADODB.Connection")

'Open database
objConn.Open Application("ConnString")

'Check status
If objConn.State = adStateClosed Then
   strResultaat = "De database is niet geopend! Er is iets fout."
Else
   strResultaat = "De database is geopend, we sluiten 'm weer af"

   'Sluit database
   objConn.Close
End If

'Geef Connection object vrij
Set objConn = Nothing
%>
<HTML>
<BODY>
<%
Response.Write strResultaat
%>
</BODY>
</HTML>


In het bovenstaande voorbeeld gebruiken we onder andere de constante adStateClosed. Dit is een constante die voor ADO van belang is. We kunnen echter niet zonder meer gebruik maken van deze constante. Deze moet eerst gedefinieerd worden. Dit kan op drie manieren:

  • Zelf definiëren met Const adStateClosed = 0
  • Het bestand adovbs.inc als include bestand aanroepen. Je kunt dit bestand vanuit C:\Program Files\Common Files\System\ado naar je website kopiëren. Vervolgens zet je de volgende regel onderaan je ASP pagina:
    <!--#include virtual="/adovbs.inc"-->
  • Door de Type Library op te geven in global.asa. Je hoeft dan nergens in applicatie een van de andere methoden te gebruiken. Zet de volgende code in global.asa:
    <!-- METADATA TYPE="TypeLib" File="C:\Program Files\Common Files\System\ado\msado15.dll" -->
<< vorige | ^ naar boven | overzicht | volgende >>
copyright 2000-2007 ASPNL