Avatar billede dkkarpen Nybegynder
17. maj 2000 - 09:32 Der er 27 kommentarer og
1 løsning

Kan ikke finde tabeller

Halløj

Jeg er begyndt at bruge SQL server, men jeg får fejl når jeg forespørger.

Se f.eks.:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E37)
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'referat'.

SQl var: strSQL = "SELECT * FROM referat WHERE (((Referat.Dato)>'4/1/2000' And (Referat.Dato)<'6/30/2000')) order by dato desc;"
Avatar billede doeleman Nybegynder
17. maj 2000 - 14:42 #1
Uden at være den store ASP ekspert, vil jeg gætte på, at det har noget at gøre med store og små bogstaver.

Læg mærke til at referat er ikke det samme som Referat.
Avatar billede sjensen Nybegynder
17. maj 2000 - 15:17 #2
Du behøver ikke at bruge Referat. foran dato i din where del:

WHERE (((Dato > '4/1/2000') And (Dato < '6/30/2000')) order by dato desc;

Bemærk i øvrigt at jeg har ændret lidt på placeringen af paranteser.

Men.. Fejlmeddelelsen tyder på at din tabel ikke hedder "referat". Det kan som doeleman siger skyldes blandingen af store/små bogstaver, men check også at den hedder sådan.
Avatar billede dkkarpen Nybegynder
17. maj 2000 - 16:21 #3
Ingen af svarene virker. Nu har jeg prøvet med en MEGET simpel kode.

Se her:

<%
    Set Conn = Server.CreateObject("ADODB.Connection")
    strSQL = "SELECT * FROM Referat"
    Conn.Open "DSN=ledelse", "sa"
    Set rs = Conn.Execute(strSQL)   
   
    If Not (rs.BOF Or rs.EOF) Then
    do While Not rs.EOF
Response.write rs("Referent")
rs.MoveNext
        Loop
        Response.Write "</table>"
    Else
       
    End If
conn.Close
%>

Den giver flg fejl:

Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E37)
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'Referat'.
/sql.asp, line 11
Avatar billede dkkarpen Nybegynder
17. maj 2000 - 16:24 #4
Linie 11 er forøvrigt:

strSQL = "SELECT * FROM Referat"
Avatar billede dkkarpen Nybegynder
17. maj 2000 - 16:26 #5
Mine sql's virker fint i query analyzer, men ikke i browseren...
Avatar billede sjensen Nybegynder
17. maj 2000 - 16:59 #6
Og "ledelse" er oprettet som hhv. System, User og eller file DSN ?

Og peger på den rigtige database ?

Er du for øvrigt sikker på at den bruger du er logget på med i browseren har adgang til SQL databasen ?

Du bliver jo formentligt ikke spurgt om brugernavn/password i browseren, og skal derfor sætte det i forb. med din ODBC.

Hvis du er sikker på at "Referat" er navnet på din table, kan det kun være fordi den ikke kan åbne databasen, eller har de fornødne rettigheder til at åbne med.
Avatar billede dkkarpen Nybegynder
18. maj 2000 - 13:44 #7
ledelse er oprettet som system

Ja den peger på den rigtige database

Jeg er logget på som admin og har rettigheder til databasen.

Avatar billede blackthorne Nybegynder
19. maj 2000 - 13:16 #8
undersøg om tabellen er ejet af en anden end dbo, ellers er det derfor at siden ikke kan benytte tablen og tror faktisk ikke at den findes i databasen.

Hvis tabellen er ejet af en anden end dbo så er der 2 løsninger. 1 change owner på tabellen, eller log på med ejeren af tabellen istedet for sa.

En helt anden løsning er at "referat" muligvis er et reservet ord og du skal derfor benytte select * from [referat]
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:12 #9
Hvor ændrer jeg ejerskabet?
Avatar billede blackthorne Nybegynder
22. maj 2000 - 11:17 #10
enten sætter du dig som medlem i server rolen i dit logon som system administrator (medfører at alle objecter du opretter ejes af dbo). ellers også benytte du følgende stored procedure. (dump fra online help

sp_changeobjectowner (T-SQL)
Changes the owner of an object in the current database.

Syntax
sp_changeobjectowner [@objname =] 'object', [@newowner =] 'owner'

Arguments
[@objname =] 'object'
Is the name of an existing table, view, or stored procedure in the current database. object is nvarchar(517), with no default. object can be qualified with the existing object owner, in the form existing_owner.object.
[@newowner =] 'owner'
Is the name of the security account that will be the new owner of the object. owner is sysname, with no default. owner must be a valid Microsoft® SQL Server™ user or role, or Microsoft Windows NT® user or group in the current database. When specifying Windows NT users or groups, specify the name the Windows NT user or group is known by in the database (added using sp_grantdbaccess).
Return Code Values
0 (success) or 1 (failure)

Remarks
The owner of an object (or the members of the group or role owning the object) has special permissions for the object. Object owners can execute any of the Transact-SQL statements related to the object (for example, INSERT, UPDATE, DELETE, SELECT, or EXECUTE) and can also manage the permissions for the object.

Use sp_changeobjectowner to change the owner of an object if the security account that owns the object has to be dropped but the object must be retained.

Use sp_changedbowner to change the owner of a database.

Permissions
Only members of the db_owner fixed database role, or a member of both the db_ddladmin and db_securityadmin fixed database roles can execute sp_changeobjectowner.

Examples
This example changes the owner of the authors table to Corporate\GeorgeW.

EXEC sp_changeobjectowner 'authors', 'Corporate\GeorgeW'

 

See Also
CREATE TABLE System Stored Procedures
sp_changedbowner 
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:22 #11
Ok nu har jeg sikret mig at dbo er owner. Og jeg har taget højde for muligheden for et reserveret ord. Jeg dog stadig samme fejl :-(
Avatar billede blackthorne Nybegynder
22. maj 2000 - 11:26 #12
hvordan connecter du til databasen, (hvilket login og hvilken user benytter login)

er det fra en internet side, eller fra et program eller hvad

hvis du kan select fra tabellen mens du er sa så er problemmet 100% et spørgsmål om sikkerheden der fratager dig rettigheden for at select fra tabellen
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:31 #13
Login: sa
User: Admin

Fra asp side
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:32 #14
Som tidligere nævnt så virker mine sql's fint i query analyzer.
Avatar billede blackthorne Nybegynder
22. maj 2000 - 11:38 #15
enten er tabellen referat ikke ejet af dbo (muligvis skal der refreshes) ellers også er user admin fratvunget ret til at se i tabellen referat. hvis du har mulighed for det så prøv at oprette tabellen mens du er logget ind som sa. og udfør det samme select
Avatar billede blackthorne Nybegynder
22. maj 2000 - 11:39 #16
husk at disconnect fra serveren ellers bliver du ikke logget ind som sa
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:45 #17
Hvordan?
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:46 #18
Når du taler om at logge ind som sa hvad mener du så?
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:48 #19
Referat er ejet af dbo
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:49 #20
Public users har rettigheder til alt
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 11:52 #21
Hvad med "Startup service account"??
Avatar billede blackthorne Nybegynder
22. maj 2000 - 12:15 #22
ang. disconnect i enterprise manageren kan du højre klikke på serveren og der kommer et menupunkt der hedder disconnect. i samme menu er der en der hedder edit sql registration... i den dialog kan du ændre at du logge på via standard security med sa. Hvis du gør det skal du i ovennævte menu disconnect ellers træder det ikke i kraft. når du bagefter åbener serveren og laver tabeller skulle de automatisk altid oprettes som dbo ejer. (Dog er dette ikke der mest korrekte løsning)

mht "Startup service account" skal man såreglen ikke ændre ved. (hvad står din til)

logger du ind fra asp med sa + password (Major sikkerhedsbrist) hvis passwordet ikke er angivet, kan det være at den benytter en anden bruger som f.eks.(din NT bruger) eller "guest"
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 12:16 #23
Jeg logger på med sa som login uden at angive et password
Avatar billede blackthorne Nybegynder
22. maj 2000 - 12:36 #24
prøv også at angive password i asp scriptet. (jeg ved ikke hvordan man gør det)
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 12:46 #25
Har gjort det uden succes...
Avatar billede blackthorne Nybegynder
22. maj 2000 - 12:50 #26
så er jeg bange for at jeg ikke kan hjælpe dig. Dog er jeg næsten sikker på at det har noget at gøre med sikkerhed, fordi at du kan gøre det fra sql analyser.

kan du udfører selects fra andre tabellen fra asp.
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 12:59 #27
Nej desværre
Avatar billede dkkarpen Nybegynder
22. maj 2000 - 17:43 #28
Jeg fandt ud af at problemet var i forbindelse med ODBC oprettelsen. Men tak for hjælpen alligevel. Der var mange hints jeg kan drage nytte af ;-)
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
Computerworld tilbyder specialiserede kurser i database-management

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