|
|
|
имя таблицы в процедуре
|
|||
|---|---|---|---|
|
#18+
ase 15 можно ли в процедуру передать имя таблицы в качестве параметра что то типа Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2009, 09:05 |
|
||
|
имя таблицы в процедуре
|
|||
|---|---|---|---|
|
#18+
1, Думаю что НЕТ! Но можно сделать динамический SQL Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2009, 09:39 |
|
||
|
имя таблицы в процедуре
|
|||
|---|---|---|---|
|
#18+
1 wrote: > можно ли в процедуру передать имя таблицы в качестве параметра > что то типа > > create procedure test (@tablename varchar (*30*)) > as > select * from tablename Передавать можно. А вот так select * from @tablename писать нельзя. Можно использовать динамический SQL ( exec ('sqlstring') ), но текст запроса придётся формировать самому, на TSQL, что уже не очень хорошо, и само использование динамического SQL я бы не рекомендовал. И сложно, и небезопасно, и проблемы с производительностью могут быть. Да и вообще это -- не по SQL -евски. В общем, лучше сразу же откажитесь от такой дурацкой идеи, как передавать имя обрабатываемой таблицы в процедуру. Если у вас много таблиц с одинаковой структурой -- слейте их лучше в одну таблицу, и работайте с ней нормально. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2009, 11:18 |
|
||
|
имя таблицы в процедуре
|
|||
|---|---|---|---|
|
#18+
Если предполагается использовать данные из нескольких одинаковых по структуре таблиц, тогда лучше всего сделать обертку на процедуру, которая будет данные из нужной таблицы копировать в некоторую темповую - а уже внутри процедуры работать четко с темповой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2009, 12:23 |
|
||
|
имя таблицы в процедуре
|
|||
|---|---|---|---|
|
#18+
спасибо за ответы много одинаковых таблиц, и как бы хотел сделать обработку в одной процедуре но с учетом того что запросы сложные то проще будет сделать сначал выборку нужных данных из таблиц в темп а потом уже с ней работать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2009, 12:28 |
|
||
|
имя таблицы в процедуре
|
|||
|---|---|---|---|
|
#18+
Ещё, одна причина - по которой не стоит передавать имя таблицы в процедуру - это безопасность ваших данных. Решение могут просто элементарно завернуть и жалко будет потраченного времени. Напишите отдельную проку для каждой таблицы и вызывайте по мере надобности. Оно и быстрее работать будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2009, 22:57 |
|
||
|
|

start [/forum/search_topic.php?author=%D0%93%D0%BE%D1%81%D1%82%D1%8C_2210&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
151ms |
get topic data: |
11ms |
get first new msg: |
9ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 519ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...