4 messaggi dal 16 ottobre 2011
salve a tutti sto cercando di creare un'istruzione sql che mi restituisca i valori di una tabella il cui nome è all'inteno di un'altra.

in pratica con un dropdownlist1 elenco una serie di nomi presenti in una tabella

select colonna1 from tabella 1

i dati di questa tabella rappresentano dei nomi di altre tabelle i quali risultati devono uscire in una dropdownlistlist2 le tabelle hanno una colonna ciascuno con lo stesso nome (colonna)

quindi l'istruzione dovrebbe essere

select colonna from dropdownlist1.text

il problema è che non riesco a capire come scrivere correttamente questa istruzione

qualcuno mi puo aiutare?
1.976 messaggi dal 27 luglio 2005
Contributi
salve,
piopio wrote:
salve a tutti sto cercando di creare un'istruzione sql che mi restituisca i valori di una tabella il cui nome è all'inteno di un'altra.
in pratica con un dropdownlist1 elenco una serie di nomi presenti in una tabella
select colonna1 from tabella 1
i dati di questa tabella rappresentano dei nomi di altre tabelle i quali risultati devono uscire in una dropdownlistlist2 le tabelle hanno una colonna ciascuno con lo stesso nome (colonna)
quindi l'istruzione dovrebbe essere
select colonna from dropdownlist1.text
il problema è che non riesco a capire come scrivere correttamente questa istruzione
qualcuno mi puo aiutare?

la pratica richiede l'utilizzo di codice SQL dinamico, in quanto il nome degli oggetti coinvolti in un'istruzione di SELECT deve essere espresso da costanti, quindi NON puoi scrivere
SELECT @nomeColonna FROM @nomeTabella WHERE @nomeColonna = @valore; e passare il valori delle variabili come argomento al comando, ma devi giocoforza arrivare a sostituire i nomi delle variabili prima di eseguire il comando
devi quindi costruire dinamicamente tutto il comando lato clienti ed eseguire il codice generato verso il server...
dove devi fare "la cosa"?
saluti

Andrea Montanari
http://www.hotelsole.com - http://www.hotelsole.com/asql/index.php
4 messaggi dal 16 ottobre 2011
devo inserirlo in un sito asp.net, utilizzo il linguaggio vb in visual studio 2010 cosa mi consigli di fare?
1.976 messaggi dal 27 luglio 2005
Contributi
salve,
qui le "scuole di pensiero sono tante".. :)
se chiedi a me, che sono piu' legato alla "chiusura" di un amministratore di basi di dati, ti dico di scrivere una apposita stored procedure alla quale passerai come parametri i nomi delle colonne/tabelle coinvolte... nel codice della procedura costruirai un comando SQL dinamico che poi eseguirai tramite EXEC @command;, dopo aver ovviamente validato che i parametri siano "corretti" e non contengano "problemi" tipo "drop table" o cose simili...
molto piu' probabilmente, invece, finirai per generare il codice lato client nell'applicazione vb e passerai il comando SQL la' generato ad un command... chiedi nei forum di programmazione ed arriverai a questa soluzione :) ... migliaia di "punti di accesso" alla base dati sparsi ovunque nel codice, magari generato anche via linq [ :( :) ], impossibile da manutenere/ottimizzare dal dba, ma esito finale della attuale scuola di pensiero..
saluti

Andrea Montanari
http://www.hotelsole.com - http://www.hotelsole.com/asql/index.php

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.