powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Использование временных таблиц в ХП
12 сообщений из 12, страница 1 из 1
Использование временных таблиц в ХП
    #32465711
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос след. характера:
Почему для источника записей формы нельзя поставить ХП (getMyTable) следующего содержания:
Select * from #MyTable

Ругается при изменении RecordSource как программно, так и в конструкторе
«Не существует источник записей getMyTable указанный в форме или отчёте»

Временная таблица есть. ХП есть.

Если выполнять хп просто из окна бд – всё ок, строки возвращаются.

Никогда не работал со временными табл, но жизнь заставила :)
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32465717
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл...
WinXP + adp+Ac2000 sp3
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32465760
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробовал, поставил (акес2000+сп3) - все работает, только источники контролов пришлось ручками задавать


Код: plaintext
1.
2.
3.
4.
5.
SET NOCOUNT ON 
	 create table #t (a1 int)
insert #t SELECT     auMonth AS Expr1
          FROM         tbl0MonthsName
	
	select * from #t
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32465762
ищ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ALTER PROCEDURE СохраненнаяПроцедура1

AS

SELECT ID, Name
INTO #t
FROM Фирмы

select * from #T

форма, на основе этой хп открыается
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32465835
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
большое спасибо!
Понял что дело в VBA коде.
ХП у меня с параметрами, которые я хотел подсунуть в RecordSource
me!RecordSource ="getMyTable 1"

здесь вылетала ошибка.

Попробовал передать параметры через Inputparametrs - всё получилось

Ещё раз спасибо!
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32465964
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
me.RecordSource = "EXEC getMyTable 1 " 
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32465988
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
локальные временные таблицы созданные в хранимых процедурах доступны только изнутри этих процедур и удаляются после завершения хранимой процедуры - поэтому у тебя и ругалось

я делал источником данных формы временную таблицу - правда назначал через подготовленный рекордсет

Код: 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.
With CurrentProject.Connection
On Error Resume Next
'Удаляем если осталась с прошлого сеанса'
.Execute  "drop TABLE #TempPlatToFrZarplata" 
On Error GoTo  0 

'Создаем запросом временную таблицу'
.Execute  "SELECT  idplat,  rur_src_kt as ktplat, info, 0  AS id_sotr, " & findep_id & _
 " AS id_findep   INTO #TempPlatToFrZarplata FROM         dbo.plat p   WHERE     DATEPART(m, dataplat) = DATEPART(m, "  & _
SqlData(zp_date_plat) &  ") AND DATEPART(yyyy, dataplat) = DATEPART(yyyy, "  & _
SqlData(zp_date_plat) &  ") AND def_st_rasp = 76  AND PartOf IS NULL AND ongroup = " & findep_id &  "  AND info LIKE N'% зп %'" 


'Добавляем первичный ключ чтоб можно было ресинхронизировать'
.Execute  "ALTER TABLE dbo.#TempPlatToFrZarplata ADD CONSTRAINT PK_TempPlatToFrZarplata PRIMARY KEY CLUSTERED ( idplat) ON [PRIMARY]" 


....

'прочие скрипты обработки временной таблицы'
...

'Открываем временную таблицу в рекордсет'
Src.Open  "select idplat,   ktplat, info,  id_sotr,  id_findep from #TempPlatToFrZarplata" , _
CurrentProject.Connection, adOpenDynamic, adLockOptimistic


'Назначаем рекордсет форме'
Set Me.Recordset = Src
Me.ResyncCommand =  "select idplat,   ktplat, info,  id_sotr,  id_findep from #TempPlatToFrZarplata  where idplat = ?" 
Me.UniqueTable =  "#TempPlatToFrZarplata" 

End With

...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32466049
OldPferd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делал то же (в Form_Open), только подсовывал таблицу форме напрямую:
Me.RecordSource = "#tab" (или ХП, использующая эту #tab)

А в Form_Close на всякий случай сразу же удалял #tab
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32466364
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА в Form_Close на всякий случай сразу же удалял #tab
А зачем?
Код: plaintext
1.
2.
cmd.CommandText =  "If object_ID('tempdb..#PropertiesLinesTmp') Is Null "  & _
             "Create Table tempdb..#PropertiesLinesTmp (Property_id Int Primary Key Not Null, Property_value_id Int Not Null, ok Bit) "  & _
             "Else Truncate Table tempdb..#PropertiesLinesTmp" 
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32466449
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Pavel

знаешь в чем разница между truncate и Drop ?

зы: это намек
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32466684
OldPferd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем?

Просто для порядка,попользовался - убери за собой

И на ГФ как-то прочитал, что даже после завершения ХП #table бывает
удаляются не сразу, а через некоторое время

Правда для редактирования #tab приходится еще давать права
db_datawriter на tempdb
...
Рейтинг: 0 / 0
Использование временных таблиц в ХП
    #32466864
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АлексейК
авторзнаешь в чем разница между truncate и Drop ?
Отчетливо. Намек напрасен. А код - всего лишь пример.

OldPferd
авторПросто для порядка,попользовался - убери за собой
Тут я с тобой абсолютно согласен. Но Form_Close может и не наступить...
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Использование временных таблиц в ХП
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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