PDA

Visualizza la versione completa : [MS SQL] Database come variabile


Debiru
09-06-2009, 18:24
Salve, secondo voi è possibile in MS SQL trattare il nome del Database come fosse una variabile?

Devo confrontare dei dati di due database diversi ma in certi casi è possibile che il nome dei database siano diversi dallo standard.

In genere si usa:
From NomeDB..NomeTabella etc etc

E' possibile una cosa tipo @NomeDb..NomeTabella?

Ne sapete qualcosa?

Tnx

Stoicenko
09-06-2009, 18:27
linguaggio?

cmq se usi query sql basta che al database ti connetti con il nome del database inserito da codice.. dove sta il problema? lo metti nella connection string

Debiru
09-06-2009, 18:32
Purtroppo non è così semplice, me la devo sbrigare con una query secca.

Devo usare la query all'interno del reporting services.

In sostanza devo chiamare la tabella a partire dal nome del database a prescindere dalla connection string, purtroppo però non sempre i due db hanno lo stesso nome...

Stoicenko
09-06-2009, 18:56
ok ma se la query è così:

string query = "select campo from database.tabella where nonso";

non puoi fare così:

string query = "select campo from " + database + ".tabella where nonso";

dove database lo metti tu a runtime preso da dove devi

Debiru
09-06-2009, 19:10
Beh, non è proprio così semplice cmq ho trovato che con l'istruzione EXEC() posso costruire una stringa con all'interno una query e poi eseguirla.

Tramite la tabella d'appoggio posso passare il nome del database, lui non è in grado di ricavarselo ma gli può arrivare dall'alto.

Ora tocca vedere cosa ne pensa:

1° Reporting Services
2° Il nostro sistemista :p

Loading