[ASP] Oracle connecten

Pagina: 1
Acties:
  • 1.253 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 15-09 11:39
Beste lezers.

Het volgende ik probeer op een Windows 2003 server een connectie te maken met Oracle.
Ik ben aardig gevorderd met asp. maar met het configureren van iis en odbc wordt het voor mij al snel verwarrend.

maar ik krijg het maar niet voor elkaar om een connectie te maken met de database.

ik krijg dan ook de volgende fout melding als ik een pagina wil open die naar een oracle database wil connecten.


Microsoft OLE DB Provider for Oracle error '80004005'

De client- en netwerkonderdelen van Oracle zijn niet gevonden. Deze onderdelen worden door Oracle Corporation geleverd en maken deel uit van de clientsoftware-installatie van Oracle versie 7.3.3 of hoger. De voorziening werkt pas als deze onderdelen zijn geïnstalleerd.

wat doe ik fout of wat vergeet ik.
hopelijk kunnen jullie me verder helpen

Acties:
  • 0 Henk 'm!

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Waarschijnlijk is er exact aan de hand wat de foutmelding zegt.
Heb je wel een Oracle client geinstalleerd?

Who is John Galt?


Acties:
  • 0 Henk 'm!

  • PieterJ
  • Registratie: Juli 2000
  • Laatst online: 19-09 15:26
Volgens mij is de melding vrij duidelijk:
De client- en netwerkonderdelen van Oracle zijn niet gevonden. Deze onderdelen worden door Oracle Corporation geleverd en maken deel uit van de clientsoftware-installatie van Oracle versie 7.3.3 of hoger. De voorziening werkt pas als deze onderdelen zijn geïnstalleerd.
Je kan niet direct connecteren met een oracle db server vanuit ODBC.
Je moet eerst de client software voor Oracle installeren.

[ Voor 0% gewijzigd door PieterJ op 04-04-2007 15:31 . Reden: te laat ]


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Heeft de useraccount waarop je IIS-server draait toegang tot de Oracle server?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • bastv
  • Registratie: September 2005
  • Laatst online: 08-09 20:34
ASP:
1
2
3
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.OpenDatabase("", _
     "username/password", Cint(0))


staat op http://www.asp101.com/articles/colin/oracle/default.asp

Acties:
  • 0 Henk 'm!

  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 15-09 11:39
bestand voor jullie reactie's

ik heb nu het volgende script
ASP:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<%@ Language=VBScript %>
   <html>
   <head>
   <title>Oracle Test</title>
   </head>
   <body>
   <center>
   <%
     Set objConn = Server.CreateObject("ADODB.Connection")
     objConn.Open "Provider=MSDAORA;Data Source=10.10.5.1;UserId=gebruikersnaam;Password=wachtwoord;"

     Set objRs = objConn.Execute("SELECT * FROM DEMO.EMPLOYEE")

     Response.Write "<table border=1 cellpadding=4>"
     Response.Write "<tr>"

     For I = 0 To objRS.Fields.Count - 1
       Response.Write "<td><b>" & objRS(I).Name & "</b></td>"
     Next

     Response.Write "</tr>"

     Do While Not objRS.EOF
       Response.Write "<tr>"

       For I = 0 To objRS.Fields.Count - 1
         Response.Write "<td>" & objRS(I) & "</td>"
       Next

       Response.Write "</tr>"

       objRS.MoveNext
     Loop

     Response.Write "</table>"

     objRs.Close
     objConn.Close
   %>
   </center>
   </body>
   </html>



nu krijg ik de volgende fout melding:
Microsoft OLE DB Provider for Oracle error '80004005'

ORA-12514: TNS: de service die in de verbindingsdescriptor is aangevraagd, is niet bekend bij de listener.

/1index.asp, line 10



nou bestaad de db DEMO.EMPLOYEE niet. maar omdat hij al eerder een foutmelding geeft denk ik dat het daar niet aan ligt. de server is daad werkelijk wel beschikbaar.

de gebruikersnaam en wachtwoord zijn ook correct.

kunnen jullie mij verder helpen.

Acties:
  • 0 Henk 'm!

  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 13-12-2024
Volgens mij moet je op de client (de webserver in dit geval) iets van een bestandje aanpassen (ik geloof tns.ora oid) daar moet je de server met gegevens inzetten zodat de listner weet welke server het is. Is voor mij al wel weer een tijdje geleden moet ik zeggen dat ik met oracle heb gewerkt.

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


Acties:
  • 0 Henk 'm!

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

tnsnames.ora moet dat zijn.

Who is John Galt?


Acties:
  • 0 Henk 'm!

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
en in plaats van het ip adres van de server moet je daar de alias naam van de database zoals je hem in tnsnames.ora hebt staan komen te staan. Dit omdat op 1 ip adres meerdere oracle servers actief kunnen zijn. De listener bepaalt dan aan de hand van het SID welke server hij moet hebben.

Voorbeeld van een entry in tnsnames.ora:
code:
1
2
3
4
5
6
7
8
9
MYDEMODB =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.5.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = REALSID)
    )
  )


Het voorbeeld volgend komt jouw connectionstring er dan als volgt uit te zien:
code:
1
objConn.Open "Provider=MSDAORA;Data Source=MYDEMODB;UserId=gebruikersnaam;Password=wachtwoord;"

Acties:
  • 0 Henk 'm!

  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 15-09 11:39
Ik heb idd het bestand gevonden.
tnsnames.ora heb ik ook aangepast.

code:
1
2
3
4
5
6
7
8
9
mynoise =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.5.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = REALSID)
    )
  )


nu heb ik voor de zekerheid de server ook opnieuw opgestart. maar nu komt de volgende fout melding. ik heb nog wat gezocht op het bekende google.nl maar kwam ik niet veel tegen. althans niet wat de oplossing was.

hopelijk hebben jullie een oplossing.

fout melding:
Microsoft OLE DB Provider for Oracle error '80004005'

ORA-12154: TNS:kan opgegeven verbindings-ID niet herleiden

/index.asp, line 10

Acties:
  • 0 Henk 'm!

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Bij sid=... moet je de sid van je database invullen, die 'realsid' is een voorbeeld.

Who is John Galt?


Acties:
  • 0 Henk 'm!

  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 15-09 11:39
ik heb nu het SID = database naam veranderd. maar helaas werkt het nog niet.

ik ga is kijken of ik een andere client kan instaleren.

alle reactie zijn nog steeds welkom..

Acties:
  • 0 Henk 'm!

  • MacWebber
  • Registratie: September 2000
  • Niet online
Als je de Oracle Instaclient gebruikt (de simpelste om te installeren), kun je als connectstring hetvolgende gebruiken:

//servernaam:port/sid

Dan hoef je dus niet te rommelen met tnsnames.ora e.e.d.

De Oracle instaclient kun je op de Oracle site downloaden.

Acties:
  • 0 Henk 'm!

  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 15-09 11:39
MacWebber bedankt voor je reactie. ik heb jou advies gevolgd.
dat lijkt mij idd wel makkelijk.

maar misschien een domme vraag.
maar ik heb nu installCient gedownload. (om precies te zijn:instantclient-basic-win32-10.1.0.5-20060419.zip)

Maar hoe instaleer ik een aantal dll's ??

bij stap 3 staat wel het volgende:
3. Set the library loading path in your environment to the directory in Step 2 ("instantclient"). On many UNIX platforms, LD_LIBRARY_PATH is the appropriate environment variable. On Windows, PATH should be used.
maar daar wordt ik persoonlijk niet wijzer van.
waar moet ik welke map aangeven moet dat in Gegevensbronnen (ODBC)??
Pagina: 1