|
|
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Создаю новую таблицу, и хочу присвоить имя таблицы с помощью параметра ХП... Пишу: CREATE PROCEDURE dbo.sp_NewTable @NameTable nvarchar AS CREATE TABLE [dbo].@NameTable ... Выдает ошибку Как присвоить имени новой таблицы значение параметра ХП??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 12:21:58 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. P.S. префикс sp_ лучше не использовать, если это не требуется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 12:29:39 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Выполняю, но SQL Server выдает ошибку: "Error 21037: The Name specified in the Text property's 'CREATE... ' statement must match the Name property, and must be followed by valid TSQL statements." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 12:58:32 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Весь код в студию, плиз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 13:06:09 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Так я Ваш код и использую... CREATE PROCEDURE dbo.sp_NewTable @NameTable nvarchar(100) AS SET NOCOUNT ON EXEC('CREATE TABLE [dbo].' + @NameTable + '(id int)') RETURN 0 GO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 13:11:53 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Пробел вставьте перед (id int): EXEC('CREATE TABLE [dbo].' + @NameTable + ' (id int)') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 13:15:54 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
он там есть. Самое интересное - проверку на синтаксис проходит успешно, а вот "Apply" не хочет выполнять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 13:21:26 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Если выполнить из Query Analyzer: Код: plaintext Пробел тут не влияет (может в SQL-DMO?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 13:22:28 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Да, ошибка SQL-DMO "Error 21037 (SQL-DMO): ......." Что делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 13:29:01 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Если работает в QA, то запустите Profiler и посмотрите что DMO делает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 13:31:24 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
У меня сработал код нормально. @@version: Microsoft SQL Server 7.00 - 7.00.623 (Intel X86) Nov 27 1998 22:20:07 Copyright (c) 1988-1998 Microsoft Corporation Standard Edition on Windows NT 4.0 (Build 1381: Service Pack 6) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 13:35:07 |
|
||
|
Как передать имя таблицы через параметр ХП?
|
|||
|---|---|---|---|
|
#18+
Всем спасибо, особенно Jimmers!!! Все работает, просто я пытался сохранить текст этой процедуры в старой. А когда просто создал новую и ввел туда этот же текст, все заработало. Еще раз благодарю.. Но есть еще вопрос: могу я в этой вновь созданной таблице определить такие же индексы, связи и ключи, которые определены в другой таблице? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2002, 14:27:13 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32047447&tid=1820683]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
63ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 240ms |
| total: | 401ms |

| 0 / 0 |
