Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 11:10 Der er 17 kommentarer

Hente data fra MS SQL 2005

Hej,
Jeg skal hente nogle data ud fra min microsoft sql 2005 database, men jeg kan ikke rigtig få det til at virke.. er meget itvivl omkring connection string'en til dette..

Er der nogen der kan lave eller hjælpe med et simpelt eksempel?
Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 11:11 #1
Jeg har selv lavet dette:

  <%

    Set objConn = Server.CreateObject("ADODB.Connection")
    objConn.Open "Driver={SQL Server}; Server=localhost; Database=server; uid=sa; pwd=kode;"
    strSQL = "Select * From tblBiler"
    Set rs = Conn.Execute(strSQL)

    Do
      response.write = rs("bilerModel")
      rs.MoveNext
    Loop While Not rs.EOF

    Conn.Close
    Set Conn = Nothing
%>

Men får fejlen: Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.

/rac/default.asp, line 108
Avatar billede fennec Nybegynder
20. maj 2008 - 11:20 #2
Hedder databasen "server"?? Og er det den rigtige bruger/password?

Koden ser fint ud, og fejlen påpeger at databasen ikke findes (forkert DB navn angivet) eller brugerlogin oplysningerne er forkert.

Din connection skal have de rigtige oplysninger, så tjek lige dem:
objConn.Open "Driver={SQL Server}; Server=ServerNavnIPellerLocalhost; Database=DatabaseNavn; uid=SQLBruger; pwd=Password;"
Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 11:29 #3
jamen serveren er min lokale arbejdspc ind til videre, så vil mene at jeg bare kan kalde den via local host.. og bruger og password er også rigtigt, valgte bare at ladevære med at poste det med i beskeden her inde :P

har rettet lidt, havde skrevet conn istedet for objConn nogle steder, det har jeg nu rettet, men får stadig samme fejl, men min kode ser sådan her ud nu

 
    <%
        Set objConn = Server.CreateObject("ADODB.Connection")
        objConn.Open "Driver={SQL Server}; Server=localhost; Database=RentACar; uid=sa; pwd=pass;"
        strSQL = "Select * From tblBiler"
        Set rs = objConn.Execute(strSQL)
        Do
          response.write = rs("bilerModel")
          rs.MoveNext
        Loop While Not rs.EOF

        objConn.Close
        Set objConn = Nothing
    %>


Der er vel ikke noget problem ved at bruge sa brugeren andet end et sikkerheds spørgsmål?
Avatar billede fennec Nybegynder
20. maj 2008 - 12:01 #4
Prøv lige at tjekke din SQL manager. Hvad står der i server navn der??

Det kan evt være noget ala "maskinnavn\sqlexpress". Prøv at skrive det ind istedet for localhost.
Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 12:03 #5
\sqlexpress gav pote, nu får jeg en ny fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80040e4d'

[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'sa'. The user is not associated with a trusted SQL Server connection.

/rac/default.asp, line 107


---

Men nu lader det da til at den får fat i serveren :)
Avatar billede fennec Nybegynder
20. maj 2008 - 12:22 #6
Prøv at oprette en ny SQL bruger, og give ham owner rettighed til den database du bruger. Det er desuden aldrig smart at bruge sa brugeren.
Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 12:29 #7
har prøvet at oprette en anden user og givet ham dbowner rettigheder på databasen men får samme fejl

Microsoft OLE DB Provider for ODBC Drivers error '80040e4d'

[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'rac'. The user is not associated with a trusted SQL Server connection.

/rac/default.asp, line 107
Avatar billede fennec Nybegynder
20. maj 2008 - 12:44 #8
Ahh ja. Har du sat serverne op til at køre Mixed mode??
http://support.microsoft.com/kb/555332
Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 12:50 #9
Har godt set den artikel, men serveren har heletiden stået til mixed mode.. så det er lidt underligt, andre forslag?
Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 12:57 #10
Jeg prøvede at ændre min connection streng lidt så den nu har "Trusted_Connection=yes;"

men nu får jeg en ny fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC SQL Server Driver][SQL Server]Cannot open database "RentACar" requested by the login. The login failed.

/rac/default.asp, line 107


---

Jeg har dobbelt tjekket bruger og pass
Avatar billede fennec Nybegynder
20. maj 2008 - 13:00 #11
Har du givet brugeren "owner" rettighed til "RentACar" databasen?
Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 13:08 #12
Yep, jeg kiggede lidt i loggen, kan det være noget med det at gøre

Date        20-05-2008 13:02:00
Log        Windows NT (Application)

Source        MSSQL$SQLEXPRESS
Category        Logon
Event        3221243928
User        NT AUTHORITY\IUSR

Message
Login failed for user 'NT AUTHORITY\IUSR'. [CLIENT: <named pipe>]
Avatar billede fennec Nybegynder
20. maj 2008 - 13:27 #13
Skal jeg ikke kunne sige.. Måske..

Og du er helt sikker på din server står til Mixed mode?? Og du har også genstarted efter den er ændret til Mixed mode??

Jeg har aldrig skulle have "Trusted_Connection=yes;" på nogen af mine connectionsstrings.
Avatar billede sbrandsborg Nybegynder
20. maj 2008 - 13:41 #14
jeg har heller ikke skulle have den trusted_connection før nu så det virker lidt mærkeligt må jeg sige..

Jeg satte sql serveren til mixed den gang jeg installerede den så ja den har været genstartet
Avatar billede fennec Nybegynder
20. maj 2008 - 14:20 #15
Så ved jeg ikke hvad det kan være. Jeg kender kun til den fejl når vores teknikere har glemt at sætte Mixed mode, eller brugeren ikke har de rigtige rettigheder.
Avatar billede sbrandsborg Nybegynder
21. maj 2008 - 09:22 #16
Okay, du skal have tak for hjælpen, det nye problem her må jeg oprette som et nyt spørgsmål. kan du ikke oprette et svar?
Avatar billede fennec Nybegynder
21. maj 2008 - 09:26 #17
.o) <-- One Eyed Jack
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester