Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Oggetto non valido

237 views
Skip to first unread message

DanieleIT

unread,
Apr 27, 2009, 4:38:01 AM4/27/09
to
Scenario :
- DB sql server 2005 Express edition
- DB convertito da MSDE

Il software da me sviluppato funziona perfettamente.
Ho creato una nuova routine che lavora su nuove tabelle, queste nuove
tabelle le ho create nel DB tramite script sql.

Nel momento in cui vado ad aprire le tabelle mi viene generato il seguente
errore :
"[SQL Native Client][Sql Server]Nome dell'oggetto DATASHEET non è valido" e
mi butta fuori.

Ho provato a ricreare la tabella con lo script (esportato dal mio
portatile), manualmente in Sql Managmente apro la tabella e riesco a
popolarla ..

Grazie anticipatamete per l'aiuto

Luca Bianchi

unread,
Apr 27, 2009, 5:20:53 AM4/27/09
to
> Il software da me sviluppato funziona perfettamente.
> Ho creato una nuova routine che lavora su nuove tabelle, queste nuove
> tabelle le ho create nel DB tramite script sql.
>
> Nel momento in cui vado ad aprire le tabelle mi viene generato il seguente
> errore :
> "[SQL Native Client][Sql Server]Nome dell'oggetto DATASHEET non è valido"
> e
> mi butta fuori.

Mi viene in mente la possibilità che l'oggetto DATASHEET sia in uno schema a
cui l'utente non può accedere (per mancanza di permessi) oppure che
l'oggetto faccia parte di uno schema diverso da dbo e/o diverso dal default
schema dell'utente che esegue il comando

> Ho provato a ricreare la tabella con lo script (esportato dal mio
> portatile), manualmente in Sql Managmente apro la tabella e riesco a
> popolarla ..

La seconda delle 2 cause di cui sopra (oggetto in uno schema differente)
prende sempre più corpo. Se con il tuo account che ha un default schema X
(dove X <> dbo) crei un oggetto, questo verrà creato nello schema X. In
questo modo un utente che non ha default schema X potrà accedere all'oggetto
da te creato SOLO utilizzando una sintassi in 2 parti, ovvero:

SELECT campi
FROM X.Datasheet

Quando un utente che non ha default schema X esegue una query simile a

SELECT campi
FROM Datasheet

indica implicitamente a SQL Server che l'oggetto Datasheet deve cercarlo nel
SUO default schema; se in questo schema non esiste un oggetto che si chiama
Datasheet, prima di restituire un errore, SQL Server esegue un nuovo
tentativo di cercare l'oggetto nello schema DBO. Se anche questo tentativo
non va a buon fine viene restituito un errore di "oggetto inesistente".

> Grazie anticipatamete per l'aiuto

Bye


--
Luca Bianchi
Microsoft MVP - SQL Server
http://community.ugiss.org/blogs/lbianchi

DanieleIT

unread,
Apr 27, 2009, 8:11:01 AM4/27/09
to
Lo schema è lo stesso dbo.X

Ho provato ad eliminare la tabella e a creala manualmente, per il caso che
mi hai detto, e mi si presenta lo stesso problema.
"Il nome di oggetto DATASHEET non è valido"

Note in più :
- mi sto collegando alla tabella tramite ADO (l'ocx è presente)
- tutti i collegamenti alle tabelle già asistenti e convertite OK, le nuove
tabelle mi da l'errore

Grazie ancora


Lorenzo Benaglia

unread,
Apr 27, 2009, 9:23:47 AM4/27/09
to
"DanieleIT" <Dani...@discussions.microsoft.com> wrote:
> Ho provato ad eliminare la tabella e a creala manualmente, per il caso che
> mi hai detto, e mi si presenta lo stesso problema.
> "Il nome di oggetto DATASHEET non è valido"

Ciao Daniele,

Lo user account ha le dovute permission per accedere alla tabella DATASHEET?

> Grazie ancora
Prego.

Ciao!
--
Lorenzo Benaglia


Microsoft MVP - SQL Server

http://blogs.dotnethell.it/lorenzo
http://italy.mvps.org

0 new messages