Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Стационарные и временные таблицы - одинаковая производительность? / 6 сообщений из 6, страница 1 из 1
04.10.2006, 13:53
    #34031608
Сашко
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Стационарные и временные таблицы - одинаковая производительность?
Добрый день!

Такой вопрос. Была у меня большая процедура на SQL Server 2000. На определенном этапе разрабатывать такую процедуру стало затруднительным, и я разбил ее на набор небольших процедур. Эти процедуры оперируют временными таблицами, загружая в них довольно большой набор данных - некоторые процедуры формируют эти временные таблицы, другие же используют данные из таблиц. Сами же временные таблицы создаются в главной процедуре.

Вознилка необходимость переноса процедур на Sybase ASE 12.5. Но тут есть проблема - я не могу скомпилировать хранимую процедуру, где есть обращение к временной таблице, поскольку эта таблица создается в главной процедуре, откуда и вызывается потом вспомогательная процедура.

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

Думаю сделать стационарные таблицы в базе данных, и использовать их вместо временных. Но тут задался вопросом, а не будет ли снижение производительсти, или других нежелательных последствий? Подозреваю что нет, но хотелось бы уточнить у опытных людей.

Заранее спасибо всем ответившим!
...
Рейтинг: 0 / 0
04.10.2006, 14:03
    #34031662
vooo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Стационарные и временные таблицы - одинаковая производительность?
Со стационарными таблицами также должны производиться некоторые телодвижения - т к они общие для всех пользователей. Вероятно, нужно будет идентифицировать строки, внесенные тем или иным пользователем (например по spid) и соответственно подчищать в таблице информацию
...
Рейтинг: 0 / 0
04.10.2006, 14:26
    #34031795
komrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Стационарные и временные таблицы - одинаковая производительность?
Сашкоможно, наверное, создать сначала временные таблицы, а затем компилировать процедуры, но думаю тоже не лучший выход.
это единственный выход при данной схеме и коде процедур

что сложного-то?
создаешь временные таблички и проливаешь свои процедуры
и всё!
...
Рейтинг: 0 / 0
04.10.2006, 14:38
    #34031850
Сашко
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Стационарные и временные таблицы - одинаковая производительность?
Ясно, спасибо!
...
Рейтинг: 0 / 0
04.10.2006, 15:14
    #34032034
_makSim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Стационарные и временные таблицы - одинаковая производительность?
Если для написания процедур используете CAST SQL-Builder, то можно воспользоваться закладкой: Insert Code, там формируются дерективы компилятору, следующего вида:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Create Proc dbo.aInnerProc
As
  Begin
/**********************************************************
*SQL-Builder4.3
*CODE Before:
create table #tempTable
(
  p1 int
)
*CODE After:
drop table #tempTable
*********************************************************/
...

end

Одним словом, всё корректно.
...
Рейтинг: 0 / 0
04.10.2006, 15:34
    #34032156
Сашко
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Стационарные и временные таблицы - одинаковая производительность?
Интересно, надо посмотреть что это такое. Я использую DBArtisan...
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Стационарные и временные таблицы - одинаковая производительность? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]