powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / Temp таблица
12 сообщений из 12, страница 1 из 1
Temp таблица
    #36498958
Уважаемые гуру, возник простенький вопрос:
В какой системной таблице храниться список временных таблиц.
Т.е. можно, ли при помощи SQL запроса вытащить список временных таблиц.
...
Рейтинг: 0 / 0
Temp таблица
    #36499555
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр_12Уважаемые гуру, возник простенький вопрос:
В какой системной таблице храниться список временных таблиц.
Т.е. можно, ли при помощи SQL запроса вытащить список временных таблиц.
А по форуму поискали ? Хотя бы тупо ввести в строку поиска "список временных таблиц" и посмотреть соответствующие топики http://sql.ru/forum/actualthread.aspx?tid=50498&hl=%f1%ef%e8%f1%ee%ea+%e2%f0%e5%ec%e5%ed%ed%fb%f5+%f2%e0%e1%eb%e8%f6

Также хочу напомнить. что версии серверов очень разные и их возможности тоже сильно отличаются, а также то, что и временные таблицы могут быть созданные явно и неявно, быть "своими" и "чужими" (вам какие?)
...
Рейтинг: 0 / 0
Temp таблица
    #36499570
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
informix хранит список таблиц в табличке с названием systables в текущей БД.
На счет временных таблиц вопрос достаточно абстрактен и требует развития (свои временнные таблицы, таблицы конкретной сессии, явно созданные таблицы и т.д. и т.п.). Поэтому пойдем от обратного, обычно подобный вопрос возникает, когда надо дропнуть или создать таблицу и нет уверенности в ее существовании. Данный вопрос решается через механизм EXCEPTION. Например,

Код: plaintext
1.
2.
3.
4.
5.
CREATE PROCEDURE drop_my_temp_table()
ON EXCEPTION IN (- 206 ) END EXCEPTION;
DROP TABLE my_temp_table;
END PROCEDURE;

...
Рейтинг: 0 / 0
Temp таблица
    #36499660
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daugavainformix хранит список таблиц в табличке с названием systables в текущей БД.

ТС спрашивал "В какой системной таблице храниться список временных таблиц", а в systables их нет. Может ты хотел сказать systabnames в sysmaster?
Вот один из многочисленных вариантов для получения списка всех таких таблиц на сервере
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
-----------------------------------------------------------
-- List all TEMP tables from instance
--  (sorted by owner, dbname, table)
--
-- V.Shulzhenko   DBA_Tools
-----------------------------------------------------------
set isolation to dirty read;
select   tn.tabname[ 1 , 18 ] temp_table
        ,tn.dbsname[ 1 , 18 ] db_name
        ,tn.owner[ 1 , 8 ]  owner
        ,s.name[ 1 , 18 ]   dbspace
--        ,ti_partnum partnum
--        ,ti_flags
        ,substr(bitval(ti_flags, 32 ), 1 , 1 )  sys
        ,substr(bitval(ti_flags, 64 ), 1 , 1 ) log
        ,substr(bitval(ti_flags, 128 ), 1 , 2 ) srt
from systabnames tn,systabinfo ti,sysdbspaces s
where   tn.partnum = ti.ti_partnum 
        and s.dbsnum=partdbsnum(ti_partnum)         
--      and trunc( mod(ti_flags,128) / 64,0) = 1
        and (bitval(ti_flags, 32 )= 1  or bitval(ti_flags, 64 )= 1  or bitval(ti_flags, 128 )= 1 )
order by  3 , 2 , 1 , 4 
--------------------------------------------------------------
--      flags partition_header
--
--          1 Page Level Locking
--          2 Row Level Locking
--         32 System created Temp Table
--         64 User created Temp Table (logged dbspace - V.Shulzhenko)
--        128 Sort File
--        256 Contains Varchar Data Type
--        512 Contains BLOBSpace BLOBS
--       1024 Contains TBLSpace BLOBS
--       2048 Contains either Varchars,BLOBS or Rows > PAGESIZE-
--       4096 Contains optical Sub-System BLOBS
--       8192 Permanent System created Table ( undroppable )
--       16384  Special Function Temp Tables, no Bitmap Maintenanc
...
Рейтинг: 0 / 0
Temp таблица
    #36500069
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я просто в первом вопросе "временных" не прочитал :). Одно радует, что мой ответ практически совпал с ответом 7 летней давности.
...
Рейтинг: 0 / 0
Temp таблица
    #36500123
Спасибо огромное. Select помог
...
Рейтинг: 0 / 0
Temp таблица
    #36520479
skill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а как связать sid с временной таблицей ?
...
Рейтинг: 0 / 0
Temp таблица
    #36520950
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skillа как связать sid с временной таблицей ?
Раньше, вроде, никак, имея ввиду только SMI.
Сейчас (для IDS 11.x) - просто не в курсе.
...
Рейтинг: 0 / 0
Temp таблица
    #36521547
skill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
интересует 9-ка.
onstat -g ses <sesionid>
показывает User-created Temp tables.
интересно как выяснить это через sysmaster.
...
Рейтинг: 0 / 0
Temp таблица
    #36521870
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skillинтересует 9-ка.
onstat -g ses <sesionid>
показывает User-created Temp tables.
Насколько я помню, какой-то вид темповых таблиц onstat все же не показывал
Проверял просто - в dbaccess выполнял нижеуказанный скрипт и в другом окне выполнял onstat для нужного SID-а
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
-----------------------------------------------------------
-- (DBACCESS only) - Create all kinds temp tables into current session
--
--      IDS 7.1+
--
-- V.Shulzhenko  DBA Tools  02-2002
-----------------------------------------------------------
select * from items,customer
into temp temp_select_nolog with no log;
----------------------------
select * from items
into temp temp_select_log ;
----------------------------
create temp table temp_create_log
(a1 char,  a2 dec( 5 , 2 ) );
----------------------------
create temp table temp_create_nolog
(a1 char,  a2 dec( 5 , 2 ) )
with no log;
----------------------------
-- sort tempfile
select * from items,customer 
order by  4 ;
----------------------------
Возможно, это касалось только 7-й версии.
skillинтересно как выяснить это через sysmaster.
Как я ранее уже говорил, никак (IMHO)
...
Рейтинг: 0 / 0
Temp таблица
    #36522339
skill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasilis,
результат onstat
Код: plaintext
1.
2.
3.
4.
5.
User-created Temp tables :
  partnum  tabname                  rowsize
  2000e3   temp_create_nolog          5 
  300b78   temp_create_log             5 
  300b75   temp_select_log            671 
  2000e0   temp_select_nolog         679 

-- flags partition_header
-- 64 User created Temp Table

сортировочную таблицу и не показывает она с другим флагом.
-- 128 Sort File
...
Рейтинг: 0 / 0
Temp таблица
    #36523393
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skill
Код: plaintext
1.
2.
3.
4.
5.
User-created Temp tables :
  partnum  tabname                  rowsize
  2000e3   temp_create_nolog          5 
  300b78   temp_create_log             5 
  300b75   temp_select_log            671 
  2000e0   temp_select_nolog         679 

теперь осталось только выяснить, откуда onstat берет информацию по временным таблицам для конкретного SID-а :)
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / Temp таблица
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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