|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Делаем запрос в классе... Если с SELECT - все работает. Но ни UPDATE, ни INSERT, ни DELETE работать не желает и ошибок не выдает... Версия 5.0.20 под Win XP... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2007, 14:00 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Он и не должен там работать. Советую прочитать какую-нибудь вводную статью про архитектуру Cache' на нашем сайте или посетить вводный семинар Cache' Entree. Вадим ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2007, 14:05 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Спасибо, Вадим. Я так и думал... За приглашение спасибо Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2007, 14:07 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
У нас работают и INSERT И UPDATE и DELETE. Cache 4.1.5, 5.0.2 Возможно у вас какие-то неправильные классы или запросы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2007, 11:31 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
извиняюсь, каше 4.1.5 и 5.2.0.239 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2007, 11:44 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Вы просто неправильно используете запросы классов. Запросы класса позволяют с помощью SQL (select) или специальных программ (можно делать запрос и не на основе SQL) вернуть информацию о наборе объектов (вернее вернуть набор записей таблиц, которые соответствуют объектам классов). Возвращается ResultSet - набор записей. Вы можете работать с запросом класса через объектные интерфейсы из Cache' Object Script, Cache' Basic или внешних ОО-средств разработки, если Вы работаете с Cache' через объектные интерфейсы (ActiveX-интерфейс, объектная часть ADO .Net Managed Provider, Java Binding ....). Если Вы хотите через объектный интерфейс изменить данные, то Вы должны работать с объектами. Открывать их, менять, сохранять. Можно еще метод написать, в котором реализовано какое-то изменение, и вызвать этот метод через объектный интерфейс. Запрос класса не для редактирования данных !!! За счет единой архитектуры данных можно к тем же данным обращаться через соответствующие реляционные таблицы. Соответственно, через ODBC, JDBC, используя динамический или встроенный SQL можно выполнять команды insert, update, delete. Пожалуйста, прочитайте какую-нибудь обзорную статью по Cache'. Посмотрите Object QuickStart. Все необходимые материалы есть на сайте. Успехов! Советую еще подумать о миграции на последние версии Cache'. Вадим ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2007, 11:44 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Я (и наша команда) в общем работаем с каше более 4х лет, и вы говорите какие-то новые вещи 8-| Может быть, я неправильно понимаю, о чем говорится. Я так понимаю, что под классовым запросом понимается запрос к таблице, которая создается как отображение хранимого класса, а каждая запись которой (в простом случае) отображает один объект? И я не вижу сложностей с любыми SQL операциями. Другое дело, что с объектом класса нежелательно одновременно работать через объект и SQL Чисто объектный доступ безумно тормозной. Если я не прав, скажите в чем именно, cache start guide я читать не буду. PS. У меня есть надежда, что я не понял, о чем идет речь. Потому что иначе 4 года - и все неправда :'-( И еще - если использование SQL "неправильное", то почему его разрешают? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2007, 12:57 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Блок А.Н.Может быть, я неправильно понимаю, о чем говорится. Я так понимаю, что под классовым запросом понимается запрос к таблице, которая создается как отображение хранимого класса, а каждая запись которой (в простом случае) отображает один объект? Нет, речь была о SQL выражениях в запросах, определяемых в описании класса (ключевое слово Query) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2007, 14:07 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
О! Тут такая дискуссия :) Сашок все правильно понял :) Я спрашивал про запрос который "хранится" в самом классе. ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2007, 14:48 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Сашок Нет, речь была о SQL выражениях в запросах, определяемых в описании класса (ключевое слово Query) А, ну тогда понятно :-) А я уже испугался. Тогда другой вопрос: зачем в "классовом запросе" insert или delete? Не проще ли просто сделать метод класса, и в нем все нужное? Так гораздо проще и удобнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2007, 17:42 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Блок А.Н. Сашок Нет, речь была о SQL выражениях в запросах, определяемых в описании класса (ключевое слово Query) А, ну тогда понятно :-) А я уже испугался. Тогда другой вопрос: зачем в "классовом запросе" insert или delete? Не проще ли просто сделать метод класса, и в нем все нужное? Так гораздо проще и удобнее. Про это я и написал. Нужно сделать метод или менять объекты. В Class Query может быть sql-запрос или запрос не на основе SQL. Но запрос! Вы говорите, что к можно делать insert, update и delete по таблицам, которые соответствуют классам. Конечно можно! Вадим ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2007, 18:30 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Блок А.Н.зачем в "классовом запросе" insert или delete? Не проще ли просто сделать метод класса, и в нем все нужное? Так гораздо проще и удобнее. К "запросу" можно сразу обратиться из Дельфи. Классовый же метод "напрямую" не доступен, т.к. используем один ВизМ... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2007, 09:12 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
krvsaК "запросу" можно сразу обратиться из Дельфи. почему бы с дельфи не использовать odbc? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2007, 12:23 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
krvsa К "запросу" можно сразу обратиться из Дельфи. Классовый же метод "напрямую" не доступен, т.к. используем один ВизМ... А почему-бы из VisM не выполнить метод класса? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2007, 12:48 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Сашокпочему бы с дельфи не использовать odbc? Давайте примеры - покажу нашим ребятам... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2007, 13:35 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Блок А.Н.А почему-бы из VisM не выполнить метод класса? Так и сделали... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2007, 13:36 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
krvsa Сашокпочему бы с дельфи не использовать odbc? Давайте примеры - покажу нашим ребятам... Кажется это было в примерах школы Pattaya - и лежит в файлах на cache_ru . ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2007, 17:07 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Далеко ты меня послал, Сашок... ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2007, 08:28 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
krvsaСашок почему бы с дельфи не использовать odbc? Давайте примеры - покажу нашим ребятам...Нужны ли тут специальные примеры для Cache? ODBC - оно и в Африке ODBC... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2007, 11:39 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
"Посылателей" уже двое... А примеров так и нет :( ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2007, 14:52 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
"Посылателей" уже двое... А примеров так и нет :( 1.работа Cache ODBC мало чем отличается от работы OBDC c любой другой бд. Если не разберетесь, то вам в любом случае не в этот форум, а типа "учимся работать с ODBC" ;-) 2.Мне кажется, лучше реализовывать логику на стороне сервера, а при работе с ODBC это будет не так просто. В вашем случае наверно проще VisM ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2007, 17:31 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Спор непонятен... Никто не мешает написать Query на основе пользовательского кода Fetch/Close/Execute - и в этом самом Execute писать хоть DELETE хоть UPDATE хоть INSERT Никто не мешает засунуть код в процедуру - поставить у неё галку SqlProc и либо вызывать через VisM либо через ODBC - call Super.PuperClacc_Procedure().... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2007, 11:54 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
PtnСпор непонятен... Так нет никакого спора :) Ответ на вопрос давно уже получен ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2007, 08:52 |
|
"Классовый" запрос
|
|||
---|---|---|---|
#18+
Прошу подсказки. Делаю Class Query на основе пользовательского кода. В Cache' 2017 всё работает. В Cache' 2010 на %PrepareClassQuery() выдаёт ошибку. Полагая, что это в моём коде что-то не так, продую на свежесгенерированном запросе: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
После Код: sql 1. 2. 3.
%objlasterror="0 SŠ(<FUNCTION>zprepare+25^%SQL.Statement.1zprepare+25^%SQL.Statement.1" rs="" status="0 SŠ(<FUNCTION>zprepare+25^%SQL.Statement.1zprepare+25^%SQL.Statement.1" stmt=<OBJECT REFERENCE>[1@%SQL.Statement] Как сделать, чтобы запрос работал и под 2010 тоже? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2020, 09:35 |
|
|
Start [/forum/topic.php?fid=39&tid=1556124]: |
0ms |
get settings: |
25ms |
get forum list: |
11ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
68ms |
get topic data: |
20ms |
get forum data: |
5ms |
get page messages: |
952ms |
get tp. blocked users: |
3ms |
others: | 170ms |
total: | 1268ms |
0 / 0 |