Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 drop table  [new]
guest11
Guest
есть такой код:
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].['+@tab_name+']') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
BEGIN
drop table [dbo].[@tab_name]
END

как сделать чтоб в команде drop table подставлялось значение переменной
@tab_name?
14 фев 05, 16:13    [1319966]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
FAQ

Вопрос только - зачем???
14 фев 05, 16:16    [1319973]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
Smirnov Anton
Member

Откуда: Н.Новгород
Сообщений: 3220
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].['+@tab_name+']') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
BEGIN
exec('drop table [dbo].['+@tab_name+']')
END
14 фев 05, 16:17    [1319977]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
guest11
Guest
спасибо. а надо это было за тем что имя таблицы с которой работаем приходит как параметр SP
14 фев 05, 16:21    [1319995]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
guest11
спасибо. а надо это было за тем что имя таблицы с которой работаем приходит как параметр SP

очень хорошо, раздаем всем права на drop table ...
14 фев 05, 16:23    [1320003]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
Smirnov Anton
Member

Откуда: Н.Новгород
Сообщений: 3220
Гавриленко Сергей Алексеевич
guest11
спасибо. а надо это было за тем что имя таблицы с которой работаем приходит как параметр SP

очень хорошо, раздаем всем права на drop table ...

так всё ж даже правильнее будет, выполнится от текущего пользователя, а не от пользователя,создавщего процедуру
хотя, как на это посмотреть
14 фев 05, 16:28    [1320022]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
Smirnov Anton
Гавриленко Сергей Алексеевич
guest11
спасибо. а надо это было за тем что имя таблицы с которой работаем приходит как параметр SP

очень хорошо, раздаем всем права на drop table ...

так всё ж даже правильнее будет, выполнится от текущего пользователя, а не от пользователя,создавщего процедуру
хотя, как на это посмотреть

Это-то да, но смысл неясен.
14 фев 05, 16:29    [1320025]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
Smirnov Anton
Member

Откуда: Н.Новгород
Сообщений: 3220
Гавриленко Сергей Алексеевич
Smirnov Anton
Гавриленко Сергей Алексеевич
guest11
спасибо. а надо это было за тем что имя таблицы с которой работаем приходит как параметр SP

очень хорошо, раздаем всем права на drop table ...

так всё ж даже правильнее будет, выполнится от текущего пользователя, а не от пользователя,создавщего процедуру
хотя, как на это посмотреть

Это-то да, но смысл неясен.

если это не временная таблица, то смысл действительно не ясен
хотя если и временная, то тоже не очень :)
ЗЫ а по скрипту видимо это вовсе не временная
14 фев 05, 16:31    [1320036]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
guest11
Guest
Дело в том что работа с sql server ведется не напрямую а из фокса, так что все права доступа регулируются там. И те кому нельзя эту процедуру просто не вызовут. Зачем вообще она была нужна долго объяснять...:) в кратце это нужно чтоб перекинуть данные из txt файла на sql server и потом уже средствами sql'я эти данные обрабатывать.
15 фев 05, 10:25    [1321352]     Ответить | Цитировать Сообщить модератору
 Re: drop table  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
guest11
Дело в том что работа с sql server ведется не напрямую а из фокса, так что все права доступа регулируются там. И те кому нельзя эту процедуру просто не вызовут. Зачем вообще она была нужна долго объяснять...:) в кратце это нужно чтоб перекинуть данные из txt файла на sql server и потом уже средствами sql'я эти данные обрабатывать.

Зато те, кому нельзя вызывать эту процедуру, поставят себе EM или QA или чего угодно, напишут drop table и Вы долго будете искать концы и ресторить базу.
15 фев 05, 10:27    [1321361]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить