Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
1

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

02.06.2017, 00:59. Показов 1183. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Коллеги, привет!
что-то не могу разобраться в вопросе, нужна Ваша помощь.

Смысл вопроса в двух словах: есть список прайс-листов, со сроками действия, для чего применимы и тд, таблица с номенклатурой, цену к которой надо узнать, и несколько таблиц-прайс листов.

Цену подтягиваю по следующему алгоритму
1) в таблицу с номенклатурой по определенным критериям подтягиваю прайс-лист актуальный для каждой позиции.
2) Таким образом, получаю сопоставление - товарная позиция-прайс из которого надо взять стоимость.
3) Перебирая значения рекордсета перехожу к нужному для конкретной товарной позиции прайс-листу (таким образом текущая запись рекордсета - название нужного прайс листа, т.е. название таблицы - переменная)
4) Далее либо циклом по рекордсету (уже реализовал, работает корректно) либо запросом (с ним проблема) подтягиваю цену.

Загвоздка с запросом заключается в том, что я не могу корректно составить запрос(синтаксис), где название таблицы-переменная.
По возможности прошу помочь.

Пример кода с опущенными условиями отбора.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
set rs = DB.opentable("PRICE_LISTS")
 
do until rs.EOF
cur_price_list_tbl=rs.fields("Price_list_name").value
 
DB.Execute "UPDATE [TRAGET_TABLE] INNER JOIN ['" & cur_price_list_tbl & "'] ON " & _
"[TRAGET_TABLE].[ITEM]=['" & cur_price_list_tbl & "'].[ITEM]" & _
"SET [TARGET_TABLE].[VALUE]=['" & cur_price_list_tbl & "'].[VALUE]"
 
cur_price_list_tbl.movenext
Loop
Заранее спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.06.2017, 00:59
Ответы с готовыми решениями:

Формирование запроса в 2 таблицы базы данных. Каков синтаксис запроса?
Коллеги, добрый день! Есть Form1. На ней размещен Combobox1 и Texbox1 Есть база данных,...

Содержимое переменной в качестве имени переменной
Подскажите пожалуйста возможно ли использовать содержимое строковой переменной (допустим...

Синтаксис запроса со строковой переменной
Здравствуйте. Подскажите, пожалуйста, правильный синтаксис запроса. Есть: s -строковая...

Unicode в качестве имени переменной
Идентификаторы могут записываться с помощью Unicode, \uXXXX, где XXXX - четырёхзначный...

2
4080 / 1460 / 401
Регистрация: 07.08.2013
Сообщений: 3,651
02.06.2017, 08:19 2
запрос можно изменить через vba
строка будет такая
Visual Basic
1
currentdb.querydefs("Имя запроса").sql="Select table1.* from table1"
0
шапоклякистка 8-го дня
3680 / 2240 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
06.06.2017, 06:58 3
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
dim str as string
str = "UPDATE [TRAGET_TABLE] INNER JOIN [SOURCE_TABLE] ON " & _
"[TRAGET_TABLE].[ITEM]=[SOURCE_TABLE].[ITEM]" & _
"SET [TARGET_TABLE].[VALUE]=[SOURCE_TABLE].[VALUE]"
 
set rs = DB.opentable("PRICE_LISTS")
 
do until rs.EOF
cur_price_list_tbl=rs.fields("Price_list_name").value
 
DB.Execute Replace(str, "SOURCE_TABLE",cur_price_list_tbl)
 
cur_price_list_tbl.movenext
Loop
0
06.06.2017, 06:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.06.2017, 06:58
Помогаю со студенческими работами здесь

Значение переменной в качестве имени поля
Привет как значение переменной сделать как имя поля??? var myClass = function(){ ...

Значение строковой переменной в качестве имени класса
Добрый день. Прошу помочь с ответом на вопрос: Как должна выглядеть запись, чтобы содержание...

Вопрос об использовании текстовой переменной в качестве имени объекта.
Привет! Пытюсь реализовать использовании переменной в качестве имени объекта - неполучается -...

Определение кодового имени листа и дальнейшее его использование в качестве переменной
Здравствуйте, Уважаемые! Подскажите, плиз как можно правильно определить кодовое имя листа и в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru