07. november 2002 - 18:59Der er
20 kommentarer og 1 løsning
Hvad er der galt med min ODBC?
Hej,
Jeg sidder med to servere, hvoraf den ene er Databaseserver med en MSSQL 7.0, og den anden er en webserver med IIS 5.0 På min databaseserver er der databasen 'TDB' med en bruger 'TU'. På webserveren har jeg oprettet en ODBC tilgang, med parameterne: SQL server authentication Named Pipe protocol user: TU resten som default.
Det mener jeg burde give en adgang hvor jeg kan kalde med DSN navn, bruger og password, og derved komme i kontakt med databasen, men problemet er, at når jeg prøver får jeg følgende fejl: Microsoft OLE DB Provider for ODBC Drivers (0x80040E4D) [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'. /test.asp, line 13
hvilket ikke giver mening, da jeg jo har oprettet med SQL server authentication, og ikke NT adgang...
her er samtlige informationer fra når jeg konfigurerer den: Microsoft SQL Server ODBC Driver Version 03.70.0961
Data Source Name: TDB Data Source Description: TDB Datasource Server: T001AX8 Database: TDB Language: (Default) Translate Character Data: Yes Log Long Running Queries: No Log Driver Statistics: No Use Integrated Security: No Use Regional Settings: No Prepared Statements Option: Drop temporary procedures on disconnect Use Failover Server: No Use ANSI Quoted Identifiers: Yes Use ANSI Null, Paddings and Warnings: Yes
og når jeg tester den: Microsoft SQL Server ODBC Driver Version 03.70.0961
Running connectivity tests...
Attempting connection Connection established Verifying option settings Disconnecting from server
dk_akj~~>>den eneste bruger på DB'en er TU, og han er ikke oprettet på webserveren... det har jeg heller ikke været nødsagiget til før, men er villig til at prøve alt.
Det skal også lige siges at den side jeg tester med er skrevet i ASP, men det skal bruges til et andet program der kører som en proces på maskinen, der kræver at der benyttes SQL authentication, og derfor kan jeg ikke bruge NT authentication...
Den folder hvor dine db filer ligger i højreklikker du og vælger sikkerhed. Under sikkerhed tilføjer du iusr_xxx med minimum læse og skrive rettigheder.
Jeg har også prøvet med TCP/IP, og der er to issues med det - for det første kan jeg ikke få lov til at oprette DNS'en, fordi den siger der ikke er en trusted connection, for det andet skal der laves ændringer i det program der benyttes hvis TCP/IP skal køre, og jeg har ikke adgang til kildekoden...
Opret en fil (test.udl) åben filen med notepad og paste flg ind i den. [oledb] ; Everything after this line is an OLE DB initstring Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=USERNAME;Initial Catalog=DATABASE;Data Source=LOCALHOST
Det du skal rette er USERNAME DATABASE og SOURCE (serverens navn)
Hmm - nej det havde jeg ikke prøvet - men ODBC'en skal også sættes op med en Named pipe, for at programmet (eller rettere sagt nogle patches til programmet) kan køres korrekt. Hvis jeg prøver med ovenstående, så skal jeg vælge 'Other' istedet for 'Named Pipes' - korrekt?
Så har jeg fået det til at virke - det viste sig at SQL serveren var sat forkert op (skal da også gøre alting selv *s*), så det var reelt serveren der prøvede logge brugeren på med NT informationer, selv ODBC'en var sat op til noget andet...
akf~~>>smider du ikke lige et svar, for du fortjener point for alt den hjælp du er kommet med...
Det giver sårn en dejlig fornemmelse når man endelig får sådan noget til at virke *s*
Tak ilige måde :-)
/Luzk
Synes godt om
Ny brugerNybegynder
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.