Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Struttura tabella tramite query
giovedì 09 novembre 2006 - 16.51
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
S4turno
Profilo
| Junior Member
75
messaggi | Data Invio:
gio 9 nov 2006 - 16:51
SQL Server 2000.
Sto cercando di leggere la struttura di una qualsiasi tabella tramite query (per capirci, le stesse che vengono visualizzate facendo doppio click sul nome di una tabelle su enterprise manager).
Ho provato a fare una select sulla vista "INFORMATION_SCHEMA.COLUMNS", ma non trovo tutte le informazioni che mi servono. Mi manca la dimensione dei campi (dalla vista ho l'informazione sulla precisione, che non è proprio la stessa cosa), sapere se un campo è identità oppure no e trovare le PK (almeno per adesso).
Ho provato a vedere come è definita questa vista, su che tabelle estrae i dati e vedere se trovo queste informazioni li, ma inizio a perdermi, perchè non è molto comoda.
Qualcuno sa come fare?
AndreaKpr
Profilo
| Senior Member
265
messaggi | Data Invio:
gio 9 nov 2006 - 17:09
228_chkDB.zip
Ciao, ti allego una form in Vb6
che ciò che ti serve
S4turno
Profilo
| Junior Member
75
messaggi | Data Invio:
gio 9 nov 2006 - 17:31
ti ringrazio per la pronta risposta!
Il problema è che io non conosco il vb, e dato che nel codice la stringa della select viene creata dinamicamente non riesco a capire come la costruisce...
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 9 nov 2006 - 17:39
>Il problema è che io non conosco il vb, e dato che nel codice
>la stringa della select viene creata dinamicamente non riesco
>a capire come la costruisce...
Ciao S4turno,
come avrai capito non esiste una tabella di sistema contenente il comando CREATE TABLE come lo è la syscomments per gli altri oggetti.
Il consiglio che ti posso dare è di lanciare una sessione di Profiler per catturare il codice generato da Enterprise Manager quando fai doppio click sul nome di una tabella e prendere spunto da esso.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
S4turno
Profilo
| Junior Member
75
messaggi | Data Invio:
ven 10 nov 2006 - 14:14
Grazie mille!
Non conoscevo il funzionamento di SQL Profiler. Ho trovato la chiamata a due store procedure che fanno al caso mio: sp_MShelpcolumns N'[Table]' e sp_MStablekeys N'Table]'.
C'è un modo adesso di usare la tabella risultato di una SP per fare una query nidificata? Non riesco a trovare la sintassi giusta.
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
ven 10 nov 2006 - 14:22
>C'è un modo adesso di usare la tabella risultato di una SP per
>fare una query nidificata? Non riesco a trovare la sintassi giusta.
Definisci una tabella temporanea avente la stessa struttura del result set restituito dalla procedura ed utilizza la seguente sintassi per popolarla:
INSERT #tabella
EXEC storedprocedure
A questo punto puoi fare tutte le query nidificate che vuoi
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !