Esiste una query con la quale è possibile selezionare tutte le tabelle presenti in un database e popolare così un dataset?
Esiste una query con la quale è possibile selezionare tutte le tabelle presenti in un database e popolare così un dataset?
Lunga vita e prosperità!!
Usa Mozilla! http://www.mozilla.com
Nota: è una query molto rudimentale, ho pensato di scrivertela anche se non vedo il motivo per cui sia necessario caricare tutto il db in un dataset, potresti scrivere le query a mano. CI sono molti metodi per questo tipo di operazioni "Dinamiche".codice:DECLARE RS CURSOR LOCAL FAST_FORWARD READ ONLY FOR SELECT [name] FROM sysobjects WHERE xtype = N'U' OPEN RS DECLARE @object nvarchar(128) DECLARE @query nvarchar(4000) SET @query = N'' FETCH NEXT FROM RS INTO @object WHILE(@@FETCH_STATUS = 0) BEGIN SET @Query = @Query + N'SELECT * FROM ' + @object FETCH NEXT FROM RS INTO @object END EXEC sp_executesql @query CLOSE RS DEALLOCATE RS
Chi sbaglia, apprende meglio di chi non ha mai commesso errori.
DOT.NET Addicted since 2006 (My Blog)
Dimenticavo, questo discorso si può applicare a database SQL Server
![]()
Chi sbaglia, apprende meglio di chi non ha mai commesso errori.
DOT.NET Addicted since 2006 (My Blog)
sysobjects è una tabella ?
press play on tape
-----
MP3 Listing
https://sourceforge.net/projects/mp3-listing
File Listing
https://sourceforge.net/projects/file-listing-2-0/
sysobjects è una tabella di sistema che si trova su sql server e che contiene la struttura di ogni tabella memorizzata per un determinato db, oltre esistono anche la syscolumns etc. etc., sull'msdn è documentata in dettaglio ognuna delle tabelle di sistema con cui puoi progettare cose davvero straordinarie![]()
Chi sbaglia, apprende meglio di chi non ha mai commesso errori.
DOT.NET Addicted since 2006 (My Blog)
mi e' venuto un dubbio: contenendo la struttura di tutte le tabelle, contiene anche quelle delle tabelle di sistema, compresa la sua ?
Dalla colonna "name" pare di si... :master:
press play on tape
-----
MP3 Listing
https://sourceforge.net/projects/mp3-listing
File Listing
https://sourceforge.net/projects/file-listing-2-0/
Ahahaha, no no, ricorda che un server sql contiene al suo interno 4 db di default, Master, Model, msdb, tempdb.
Ti sei mai chiesto a cosa servano, anche qui l'MSDN può esserti molto d'aiuto.
Chi sbaglia, apprende meglio di chi non ha mai commesso errori.
DOT.NET Addicted since 2006 (My Blog)
si, certo che me lo sono chiestoho spulciato un po' le 4 strutture...
Ma mi chiedo soprattutto sempre di piu' se non sia il caso di fare un sub forum per i DBMS in genere e per T-SQL![]()
press play on tape
-----
MP3 Listing
https://sourceforge.net/projects/mp3-listing
File Listing
https://sourceforge.net/projects/file-listing-2-0/
Be si, sono d'accordo con te, cmq scusa, prima ho dimenticato di specificare una cosa importantissima, tutte le tabelle sys sono viste che puntano alle reali tabelle di sistema (per ovvi motivi di sicurezza).
Chi sbaglia, apprende meglio di chi non ha mai commesso errori.
DOT.NET Addicted since 2006 (My Blog)
Ho provato a fare una:
dopo la fetch, e viene fuori:codice:print @query
mi sa che ci vuole uno spazio :master:SELECT * FROM TB_UTENTISELECT * FROM TB_NEWSLETTERSELECT * FROM TB_ANNUNCI_UTENTISELECT * FROM TB_EVENTI_AZIENDESELECT * FROM TB_ANNUNCI_UTENTI_VISITESELECT * FROM TB_AZIENDESELECT * FROM TB_CANDIDATURESELECT * FROM dtpropertiesSELECT * FROM TB_ANNUNCI_AZIENDE![]()
press play on tape
-----
MP3 Listing
https://sourceforge.net/projects/mp3-listing
File Listing
https://sourceforge.net/projects/file-listing-2-0/