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

Откуда: С-Петербург
Сообщений: 616
Здравствуйте!
вот в таком коде
IF OBJECT_ID('tempdb..[#tmp]') IS NOT NULL
  DROP TABLE [#tmp]

select ...
into [#tmp]
from 
.....
DROP TABLE [#tmp]
вылезла вот такая ошибка
Cannot drop the table '#tmp', because it does not exist or you do not have permission.
причем не понятно на первом дропе или на втором валится
как такое может быть не понимаю
не подскажет ли кто?
29 дек 13, 02:02    [15360566]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
sdet
Member

Откуда:
Сообщений: 463
leov,

Это процедура? Зачем DROP TABLE [#tmp] делать? А что еще вы в коде делаете?
29 дек 13, 02:16    [15360599]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
sdet,
посмотрите мой предыдущий пост, там все подробно написано
есть приложение. оно создает коннект с базой и дальше гонит поток запросов
часть запросов исполняется просто как sql а часть через sp_prepexec
вот этот по второму пути
29 дек 13, 02:20    [15360606]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
sdet
Member

Откуда:
Сообщений: 463
leov
sdet,
посмотрите мой предыдущий пост, там все подробно написано
есть приложение. оно создает коннект с базой и дальше гонит поток запросов
часть запросов исполняется просто как sql а часть через sp_prepexec
вот этот по второму пути

Ну так и возобновляйте предыдущую тему. Или вы думаете другим делать нечего, как искать предыдущие посты и собирать подробности?
29 дек 13, 02:29    [15360630]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
sdet,
могу и возобновить, но вопрос вроде конкретный
по сути вам нечего сказать?
29 дек 13, 02:33    [15360642]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
qwerty112
Guest
глянул краем глаза прошлую тему автора
leov
sdet,
могу и возобновить, но вопрос вроде конкретный
по сути вам нечего сказать?

нука "конкретизируй" полностью - ты удаляешь в другом коннекте ? :)

зы
автор
посмотрите мой предыдущий пост, там все подробно написано

ваще даже неприпомню такого д-бизма такой наглости ...
29 дек 13, 02:40    [15360656]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
qwerty112,

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

не понимаю что вы так возбудились
в прошлой теме много лишних подробностей...
29 дек 13, 02:47    [15360665]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
sdet
Member

Откуда:
Сообщений: 463
leov
sdet,
могу и возобновить, но вопрос вроде конкретный
по сути вам нечего сказать?

Читайте сообщение об ошибке. Там все конкретно написано
29 дек 13, 02:50    [15360668]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
sdet,

вы понимаете что в коде написано?
сначала там проверяется есть ли такая таблица
если её нет то удаление не производится
если есть то удаляется
но если она есть в текущем коннекте то я не могу не иметь пермиций на неё
она ведь была создана только в текущем коннекте
далее таблица заново создается
потом по ней курссор закручивается и на выходе удаляем
опять совершенно нет повода для ошибки
29 дек 13, 02:55    [15360679]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
qwerty112
Guest
leov
qwerty112,

вроде все предельно конкретно
если исполнять этот код в одном коннекте сколько угодно раз
то это не должно приводить к ошибке
если исполнять этот код в соседних коннектах
то это вроде тоже не должно ни на что влиять

и вообще не могу представить сценария который приведет к такой ошибке
...

какой, Ъ, этот код ??
автор, если ты в одном коннекте создаешь таб., а в "соседнем" - удаляешь ,
то "это вроде тоже не должно ни на что влиять" - только в твоём сознании,
для сервера - этого "вроде" - нет,

и об этом тебе, как раз, сказали ещё в прошлой теме
15187299
Как сделать, чтобы сервер не удалял временные таблицы после завершения пакета, в котором они созданы ?
Да никак.
Читай хелп.

15188390
Заверни весь скрипт в одну хранимую процедуру и всего делов. А с клиента только один вызов этой хранимки. Если что - хранимку можно создать временную (с решеткой) прям на месте перед вызовом, она удалится сама когда сессия закроется.

вот что может быть проще ?
29 дек 13, 02:56    [15360682]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
qwerty112,

дак это же временная таблица и в каждом коннекте она отдельная
их вроде с какими-то временными именами система создает
и они не должны пересекаться
29 дек 13, 03:03    [15360692]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
тема закрыта. разобрался сам
там по rollback могло откатываться создание этой таблицы
29 дек 13, 03:09    [15360701]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
Glory
Member

Откуда:
Сообщений: 104751
leov
Cannot drop the table '#tmp', because it does not exist or you do not have permission.
причем не понятно на первом дропе или на втором валится

Серверное сообщение об ошибке всегда содержит имя исполняемого пакета и номер строки в нем, которая и вызвала ошибку
29 дек 13, 12:30    [15361058]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
Glory,

вероятно не совсем всегда
com.microsoft.sqlserver.jdbc.SQLServerException: Cannot drop the table '#tmp', because it does not exist or you do not have permission.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1515)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getMoreResults(SQLServerStatement.java:1213)
.......
29 дек 13, 16:01    [15361476]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
Glory
Member

Откуда:
Сообщений: 104751
leov
Glory,

вероятно не совсем всегда
com.microsoft.sqlserver.jdbc.SQLServerException: Cannot drop the table '#tmp', because it does not exist or you do not have permission.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1515)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getMoreResults(SQLServerStatement.java:1213)
.......

Это НЕ серверное сообщение. Это сообщение вашего приложения.
29 дек 13, 16:37    [15361526]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
aleks2
Guest
leov
тема закрыта. разобрался сам
там по rollback могло откатываться создание этой таблицы


Не, ребяты-телепаты, стыдно вам должно быть. Никто ведь rollback не углядел.
30 дек 13, 05:54    [15363050]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
Jaffar
Member

Откуда:
Сообщений: 633
вообще можно посоветовать использовать табличные переменные @__TEMP.
и не париться с их удалением.
30 дек 13, 06:37    [15363065]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
Jaffar,

да я так и планирую сделать
только табличную переменную надо создавать явно все прописывая
особенно не люблю collation прописывать, больно букаф много
хотел этого избежать
31 дек 13, 01:55    [15367395]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
aleks2,

я в общем и сам сначала не придал этому хначения
думал что DML создания таблицы будет не в транзакции
оказалось ошибался

вообще удивляет и расстаривает сколько тут флуда происходит
какой-то вечный сарказм, желчь....
сюда приходят с проблемами и ждут помощи
не хочешь - не отвечай
31 дек 13, 02:05    [15367405]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
qwerty112
Guest
leov
aleks2,

я в общем и сам сначала не придал этому хначения
думал что DML создания таблицы будет не в транзакции
оказалось ошибался

вообще удивляет и расстаривает сколько тут флуда происходит
какой-то вечный сарказм, желчь....

сюда приходят с проблемами и ждут помощи
не хочешь - не отвечай

это только с тобой такой, - ий Богу ! :))
что-то у тебя с кармой "не то" ... - сходи чтоле на концерт "PR", свечку поставь ...
31 дек 13, 02:15    [15367413]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
Jaffar
Member

Откуда:
Сообщений: 633
qwerty112
leov
aleks2,

я в общем и сам сначала не придал этому хначения
думал что DML создания таблицы будет не в транзакции
оказалось ошибался

вообще удивляет и расстаривает сколько тут флуда происходит
какой-то вечный сарказм, желчь....

сюда приходят с проблемами и ждут помощи
не хочешь - не отвечай

это только с тобой такой, - ий Богу ! :))
что-то у тебя с кармой "не то" ... - сходи чтоле на концерт "PR", свечку поставь ...



ты (написано с маленькой буквы) лучше следи за своими частями тела, а то как бы тебе этих самых "свечек" кое-куда не насовали.
любитель "свечек"......
31 дек 13, 06:17    [15367523]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
qwerty112
Guest
Jaffar
qwerty112
пропущено...

это только с тобой такой, - ий Богу ! :))
что-то у тебя с кармой "не то" ... - сходи чтоле на концерт "PR", свечку поставь ...



ты (написано с маленькой буквы) лучше следи за своими частями тела, а то как бы тебе этих самых "свечек" кое-куда не насовали.
любитель "свечек"......

что случилось, дружок ?
кто тебя обидЭл ?

зы
автор
ты (написано с маленькой буквы)

какое изысканное оскорбление ... :)

ззы
вдруг, кто не понял (мне и самому не сразу дошло)
наш, нерусский, пд-друг, не знает слова кАрма,
и путает его с кОрма, из чего и делает свои пд-выводы...
31 дек 13, 10:45    [15368166]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
Jaffar
Member

Откуда:
Сообщений: 633
qwerty112
Jaffar
пропущено...



ты (написано с маленькой буквы) лучше следи за своими частями тела, а то как бы тебе этих самых "свечек" кое-куда не насовали.
любитель "свечек"......

что случилось, дружок ?
кто тебя обидЭл ?

зы
автор
ты (написано с маленькой буквы)

какое изысканное оскорбление ... :)

ззы
вдруг, кто не понял (мне и самому не сразу дошло)
наш, нерусский, пд-друг, не знает слова кАрма,
и путает его с кОрма, из чего и делает свои пд-выводы...


Такой смелый анонимус, должен быть всегда готов ко встрече со свечками ...
31 дек 13, 10:58    [15368208]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
qwerty112
Guest
Jaffar,

ты утомляешь со своими эрот.фантазиями ...

я ещё раз повторяю вопрос:
- что случилось, дружок ? на что ты так "проэрегировал" ?
ты выяснил лексическое значение слова "кАрма" ?
31 дек 13, 11:05    [15368235]     Ответить | Цитировать Сообщить модератору
 Re: работа с временной таблицей  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31949
leov
вообще удивляет и расстаривает сколько тут флуда происходит
какой-то вечный сарказм, желчь....
сюда приходят с проблемами и ждут помощи
Какой ещё флуд?

Мало того, что вы вопрос задаёте неправильно (оказывается, код из первого топика совсем не такой, а для ответа на вопрос все должны искать по нику, а не было ли ещё каких то вопросов раньше, что вообще писал автор последние месяцы на форуме), так ещё и ответить на него нечего.

Что вы вообще ожидали, кроме ответа "поискать, где удаляется таблица или откатывается транзакция"?
Вы думали, что сервер сам удаляет таблицы, что ли?
leov
да я так и планирую сделать
только табличную переменную надо создавать явно все прописывая
Да, только табличную переменную не получится использовать, если вы конечно опять что то не скрываете.
31 дек 13, 11:16    [15368274]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить