Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Проблема с удаление таблиц  [new]
Сергей Викт.
Member

Откуда: Москва
Сообщений: 888
Всем доброго дня!
Давно являюсь читателем форума, но столкнулся с проблемой, решение которой, к сожалению, на просторах интернета не нашёл.

Проблема следующая.
В приложении посредством хранимой процедуры с параметром создается ПУСТАЯ таблица.
Пример кода:
....
BEGIN
SET @sql=N''
SET @sql=@sql+'CREATE TABLE tbl_'+convert(varchar,@action_id)+'(hz int identity(1,1),mt int) '
execute(@sql)

....
Где @action_id код действия в программе.

При вызове хранимой процедуры таблица создаётся корректно.
После некоторых действий при возникновении определенных условий данная таблица должна удаляться. Это делается посредством обычного sql запроса:
...
DROP TABLE tbl_id - имя таблицы формируется из программы. Т.е. например на sql сервер запрос приходи в виде: DROP TABLE tbl_2767 (например).
...

Проблема следующая. Периодически возникает ситуация, что таблица удаляется, и при повторном запуске действий в программе создается корректно.
А периодически происходит такая петрушка: С сервера таблица удаляется, но при выполнении запроса вида:
SELECT * FROM sys.objects WHERE type like 'U' AND name like 'tbl_%'
Появляется в списке выборки.

tbl_4644 1098083298 NULL 5 0 U USER_TABLE 2012-05-05 09:54:21.703 2012-05-05 09:54:21.707 0 0 0

При попытке удалить таблицу tbl_4644 командой:
USE [сервер]
DROP TABLE tbl_4644
GO

Выдает ошибку:
Сообщение 3701, уровень 11, состояние 5, строка 1
Cannot drop the table 'tbl_4644', because it does not exist or you do not have permission.

Прошу помощи знатоков. Я сам достаточно неплохо знаю sql, но такую хрень вижу впервые.

Сразу оговорюсь: временная таблица (#) не подходит, т.к. наличие данных проверяется из разных сессий и таблицы периодически пересоздаются из внешнего ПО.

Заранее благодарю за любую помощь!!
5 май 12, 14:44    [12513869]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с удаление таблиц  [new]
Сергей Викт.
Member

Откуда: Москва
Сообщений: 888
Сергей Викт.,
Прошу прощения. USE [БД] конечно же!:)
5 май 12, 14:46    [12513879]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с удаление таблиц  [new]
denis2710
Member

Откуда: Москва
Сообщений: 3384
Сергей Викт.,
у таблицы надо указывать схему.
автор
Сразу оговорюсь: временная таблица (#) не подходит, т.к. наличие данных проверяется из разных сессий и таблицы периодически пересоздаются из внешнего ПО.

а как насчет ##?
5 май 12, 14:48    [12513889]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с удаление таблиц  [new]
Сергей Викт.
Member

Откуда: Москва
Сообщений: 888
Блин.. вот я лошара! Спасибо огромное!:) Это я затупил, так затупил!!!)

chm.tbl_4644 - решается!!

Прошу прощения) Тему можно закрывать:)
5 май 12, 14:52    [12513917]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с удаление таблиц  [new]
Сергей Викт.
Member

Откуда: Москва
Сообщений: 888
denis2710,

по поводу ## как раз сейчас сижу думаю:) Спасибо тебе!
5 май 12, 14:55    [12513941]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить