93 messaggi dal 17 giugno 2003
ciao,
è possibile sapere se una tabella di nome X è presente in un database tramite asp?

grazie

ciao ciao

Lisa
Sì, è possibile e ci sono diversi modi per farlo, anche in funzione del database usato (ad esempio con SQL Server è possibile interrogare la tabella di sistema "sysobjects").
Con ASP (quindi con ADODB) potresti usare le estnsioni di ADO: ADOX (vedi ADOX API Reference su MSDN: http://msdn.microsoft.com/library/en-us/ado270/htm/admscadoapireference.asp)

Matteo Casati
GURU4.net
1.024 messaggi dal 19 dicembre 2003
Contributi | Blog
m.casati ha scritto:
ad esempio con SQL Server è possibile interrogare la tabella di sistema "sysobjects"


L'accesso diretto alle tabelle di sistema è deprecabile ed è sempre meglio utilizzare allo scopo le viste INFORMATION_SCHEMA. Ad esempio

SELECT 1
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'dbo'
AND TABLE_NAME = 'authors'

oppure utilizzando la funzione OBJECT_ID come nell'esempio che segue

IF OBJECT_ID('dbo.authors') IS NOT NULL
PRINT 'la tabella esiste'
ELSE
PRINT 'la tabella non esiste'

Bye
l.bianchi ha scritto:
L'accesso diretto alle tabelle di sistema è deprecabile ed è sempre meglio utilizzare allo scopo le viste INFORMATION_SCHEMA.


Assolutamente vero! Grazie per la precisazione (avevo dato una risposta un po' troppo semplicistica, anche se a puro titolo indicativo per evidenziare le possibilità legate direttamente al tipo di database usato).

Matteo Casati
GURU4.net
93 messaggi dal 17 giugno 2003
vi ringrazio per l'aiuto ma mi sono dimenticata di aggiungere nel post precedente che il database è di Microsoft Access ... le soluzioni che mi avete dato funzionano ugualmente anche con access?
scusate

Lisa
charlize ha scritto:
le soluzioni che mi avete dato funzionano ugualmente anche con access?


Quanto relativo ad ADOX assolutamente sì, mentre l'interrogazione di INFORMATION_SCHEMA.TABLES ovviamente no (solo per SQL Server).

Matteo Casati
GURU4.net
3.122 messaggi dal 16 maggio 2002
Ma... che senso avrebbe sapere se una tabella esiste? In un database relazionale la struttura *deve* essere fissa, non avrebbe senso avere un numero variabile di relazioni e soprattutto con nomi e significati diversi da quelli che sono stati previsti nel progetto iniziale.

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!
93 messaggi dal 17 giugno 2003
evidentemente sono stati previsti nel progetto iniziale se lo devo fare ... non è una tabella ma è una vista ma tanto il codice per le viste è uguale al codice delle tabelle quindi

Lisa

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.