|
|
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
Можно ли сделать в Access нечто подобное: Parameters [Parameter_1][DataType]; Select [Поля...] From [хр. проц.]( Select [Значение, передаваемое в хр.проц.] From [таблицы...] Where [Условие, использующее Parameter_1] ) Т.е. хр.проц., используемая в главном View должна получать значение аргумента из подзапроса (параметрического). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 16:35 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
Если у тебя MS SQL2000 - то да, так делать можно с помощью UDF (User-defined functions - функций пользователя). Подробности в BOL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 16:39 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
Имеется ввиду чистый Access, т.е. база mdb > OleDB > Delphi Т.е. если это в принципе сделать можно, то каков синтаксис непосредственно в Access View? В MSDN есть небольшое описание возможностей хр. процедур, но более сложных случаев (таких, как например этот) нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 16:49 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
ээээ.... Хранимка? В mdb? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 16:56 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
2 Темный Чему ты удивляешься? Если в билдере могут быть таблицы, то почему бы в дельфи не быть хранимкам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 17:08 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
АААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААА Пошел на сковородке ERP-II писать. И с таблицами, и хранимками и т.д. и т.п. Данные в кастрюле. Связь между конфорками любезно предоставлена ОАО "Чубайс - @" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 17:28 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
Так. Подзапрос с параметрами что ли нужен? Если он сохраненый - то да, можно как обычный запрос - только не забудь в итоговом запросе присвоить все необходимые параметры для параметрических запросов (понятно обяснил?) Select * From QueryWithParametrs а вот можно написать ли Select * From (Parameters [Parameter_1][DataType]; Select [Значение, передаваемое в хр.проц.] From [таблицы...] Where [Условие, использующее Parameter_1]) - это будет твое домашнее задание :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 17:30 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
Тёмному и Лоху Позорному: Ваши псевдонимы очень точно определяют уровень ваших познаний. Для вас и другних умников - "идите в MSDN и спросите". Вообще, ADO-компоненты Delphi распознавали Access View, написанные определённым образом как ХП уже в Access 97 или 2000 - точно не помню. В MSDN используется понятие ХП, хотя конечно это было бы правильнее называть параметрическим View, т.к. ХП предполагает наличие алгоритмического языка и возможность написания на нём кода. ХП Access же может содержать единственный SQL-оператор. Для Senin Viktor. Спасибо за ответ. Но всё-таки, я не нашёл описания синтаксиса передачи аргумента в ХП, которая находится в разделе From, т.е.: есть ХП_1. Она описана как: Parameters [Parameter_1][DataType]; Select [Поля...] From [Таблицы...] Where [Условие, использующее Parameter_1]. есть ХП_2. Она описана как: Parameters [Parameter_2][DataType]; Select [Поля...] From ХП_1(вот сюда надо передать Parameter_2) На такой синтаксис - передачу Parameter_2 в круглых скобках Access ругается: "ошибка в предложении From". Если ты знаешь, где можно прочитать о подобном синтаксисе, не томи, кинь ссылку, пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 18:11 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
Перечитай свой вопрос. Перечитай мой вопрос. А потом попробуй поскрипеть мозгом. В MDB нет хранимых процедур. Точка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 18:17 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
авторВаши псевдонимы очень точно определяют уровень ваших познаний. Это неверное утверждение. Если бы было сказано не уровень познаний, а способ общаться с окружающими, то можно было бы поспорить. А так - точно неверно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 18:23 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
А как ты отнесёшся к такому синтаксису: CREATE PROCEDURE ProcedureName (Parameter1 datatype, Parameter2 datatype) AS SQLStatement DROP PROCEDURE ProcedureName который прекрасно съедается MSJet. Заметь MSJet, работающим с файлом mdb, а не каким-нибудь SQL-сервером. Я же сказал "идите в MSDN и спросите". Это значит сюда: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnacc2k/html/acintsql.asp Повторюсь, что по-моему правилнее эти ХП было бы называть параметрическими View. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 18:28 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
/topic/62552#445020\r \r Это Ваши слова. Засим предлагаю закончить это безобразие ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 18:31 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
2dasistgut \r \r Все-таки ХП в Акесе нет. То что Create Proc работает - так это прихоть разработчика - и данная конструкция создает всего лишь обычный запрос Акеса. По ссылке,которую ты дал ничего нет касаемого слов CREATE PROCEDURE \r \r По поводу ников - то же не прав.\r \r >Но всё-таки, я не нашёл описания синтаксиса передачи аргумента в ХП, которая находится в разделе From\r \r Не надо ничего искать. Надо просто передать параметр в итоговый запрос.\r А вот передаешь ты параметр не верно. Из недописанного FAQ /topic/45634&pg=4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 19:13 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
Что бы совсем разогнать сомнения в отличии ХП от запросов Создадим запрос, используя синтаксис создания ХП Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Создаться запрос Код: plaintext 1. 2. 3. Выполним его Код: 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. Получим сообщение об ошибке.(Invalid SQL Statement;expected 'DELETE', 'INSERT','PROCEDURE', 'SELECT' or 'UPDATE' ) И будем его получать всю жизнь, пока не изменим cmd.CommandType = adCmdStoredProc на cmd.CommandType = adCmdTable :) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 19:36 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
Да, со ссылкой я ошибся, извините. Вот: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnacc2k/html/acadvsql.asp Статья "Advanced Microsoft Jet SQL for Access 2000". В начале статьи есть оглавление, в котором ссылка на параграфы "Procedures" и "Using a Procedure". Перечитайте, пожалуйста 8-й топик. Там я написал, что правильнее было бы называть их параметрическими представлениями, но MS использует термин "Procedure". Поэтому можно считать это вопросом терминологии. В приведённом в предыдущем топике третьем абзаце из документации написано, что в пользовательском интерфейсе Access нет объектов класа ХП. Действительно, то, что создаётся с помощью Create Procedure... видно как запросы. Но в 3-м топике этого обсуждения указано: база mdb > OleDB > ADO > Delphi т.е. я работаю не из Access или VB, а из Delphi. Но компоненты ADO уже распознают эти объекты как ХП. Но всё это не относится к основной теме. Ребята увели разговор совсем в другую сторону от первоначального вопроса. Вопрос был не в том, как передать значения параметров в объект ADODB.Command или в TADOStoredProc, а как правильно написать оператор SQL так, чтобы он внутри себя вызывал, пускай будет "View с параметрами", передавая этому "View с параметрами" значение, рассчитываемое им самим. Вопрос о ХП теперь действительно может быть закрыт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 21:31 |
|
||
|
Получение и присвоение значений параметров внутри запроса
|
|||
|---|---|---|---|
|
#18+
2dasistgut >Вопрос ...как правильно написать оператор SQL так, чтобы он внутри себя вызывал, пускай будет "View с параметрами", передавая этому "View с параметрами" значение, рассчитываемое им самим. Ну ничего другого, кроме того, что я написал посоветовать не могу. И судя по отсуствию реакции на ранее данные советы - ты или не понял, что нужно делать либо тебе просто лень делать и ты ждешь готового решения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2003, 08:57 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32342493&tid=1677856]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
73ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 245ms |
| total: | 445ms |

| 0 / 0 |
