|
|
|
select ... from @basename+... - как?
|
|||
|---|---|---|---|
|
#18+
у меня есть хранимые процедуры, в которых выполняются запросы к связанным таблицам, лежащим в разных базах (MSSQL). причем, возможно даже такое, что базы лежат на разных серверах (используется механизм linked servers - с этим я уже разобрался). слить эти базы в одну никак не получится - разные разработчики, разный софт. имя "моей базы" - константа. а вот "чужая" может называться по-разному! теперь вопрос. возможно ли каким-либо образом подставлять полное имя базы в виде строки в запросы, типа: declare @basename varchar(100) set @basename = 'server1.base1' select * from @basename+'.table1' это первое, что пришло у меня на ум - запихать имя базы в переменную. но, допустим, соединение порвалось - все переменные ведь сбросились? что посоветуете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2002, 15:17:32 |
|
||
|
select ... from @basename+... - как?
|
|||
|---|---|---|---|
|
#18+
Да , Только не как переменная в SELECT а формруй целиком запрос в переменной, и дай на выполнение ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2002, 15:27:53 |
|
||
|
select ... from @basename+... - как?
|
|||
|---|---|---|---|
|
#18+
YuriAM> а формруй целиком запрос в переменной, и дай на выполнение ! 1. а как передавать имя базы в хранимую процедуру? каждый раз как дополнительный параметр? или можно как-то более красиво 2. если запрос сложный, с кучей join'ов, то все равно весь его пихать в одну переменную??? а потом EXEC ('...'). будет ли в таком случае процедура при выполнении компилироваться каждый раз и, соответственно, тормозить в отличие от нормального select'а? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2002, 15:48:08 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=3366&tid=1818377]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
27ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
19ms |
get tp. blocked users: |
1ms |
| others: | 196ms |
| total: | 269ms |

| 0 / 0 |
