Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.01.06;
Скачать: CL | DM;

Вниз

ORDER BY (Query1.Edit) Cannot modify a read-only dataset   Найти похожие ветки 

 
azl ©   (2007-12-09 15:51) [0]

Зравствуйте!
Помогите решить проблему. Облазил весь Интернет, но толкового ответа так и не нашел. Когда добавляю в SQL-запрос ORDER BY, то при Query1.Edit выскакивает сообщение Cannot modify a read-only dataset. При этом RequestLive := True; Если убираю ORDER BY, все нормально работает.
Что нужно сделать, чтобы можно было редактировать запись и не было этого сообщения?

Заранее спасибо.


 
Anatoly Podgoretsky ©   (2007-12-09 15:58) [1]

> azl  (09.12.2007 15:51:00)  [0]

Парадокс


 
azl ©   (2007-12-09 16:08) [2]


> Anatoly Podgoretsky ©   (09.12.07 15:58) [1]

Это значит, что ничего нельзя сделать?


 
Reindeer Moss Eater ©   (2007-12-09 16:18) [3]

Нужен индекс по всему ордербаю. Но может и не помочь.


 
Anatoly Podgoretsky ©   (2007-12-09 16:22) [4]

> azl  (09.12.2007 16:08:02)  [2]

Я тоже могу задавать вопросы, мне можно, а вот тебе отвечать положено.


 
Johnmen ©   (2007-12-09 16:33) [5]


> Это значит, что ничего нельзя сделать?

Это значит, что надо читать справку.
RequestLive+F1 - See also - Updating a read-only result set

> Облазил весь Интернет, но толкового ответа так и не нашел.

И врать не надо, здесь этого не любят.


 
azl ©   (2007-12-09 17:07) [6]


> Johnmen ©   (09.12.07 16:33) [5]

Я не вру. Может просто не то ищу, что надо. Если бы я нашел, вопросы бы не задавал здесь.

> Это значит, что надо читать справку.
> RequestLive+F1 - See also - Updating a read-only result
> set

Почитал, спасибо. Я понял, что нужно использовать UpdateSQL. Только не совсем понятно, что нужно писать в DeleteSQL, InsertSQL, ModifySQL.

Set ModifySQL to the SQL UPDATE statement to use when applying an updated record to a dataset. Statements can be parameterized queries. To create a UPDATE statement at design time, use the UpdateSQL editor to create statements, such as:
UPDATE "Country.db"
SET Name = :Name, Capital = :Capital, Continent = :Continent
WHERE Name = :OLD_Name

At run time, an application can write a statement directly to this property to set or change the UPDATE statement.
Note:
As the example illustrates, ModifySQL supports an extension to normal parameter binding. To retrieve the value of a field as it exists prior to application of cached updates, the field name with "OLD_". This is especially useful when doing field comparisons in the WHERE clause of the statement.

Это если у меня, например, 100 полей, я должен кадое прописывать в ModifySQL?


 
Anatoly Podgoretsky ©   (2007-12-09 17:15) [7]

У тебя компоненты используются?


 
azl ©   (2007-12-09 17:19) [8]


> Anatoly Podgoretsky ©   (09.12.07 17:15) [7]

В смысле?


 
Johnmen ©   (2007-12-09 17:22) [9]


> azl ©   (09.12.07 17:07) [6]
> Это если у меня, например, 100 полей, я должен кадое прописывать
> в ModifySQL?

Все, значения которых могут быть изменены.
Но 100 полей говорит о кривом проектировании, например.


 
Anatoly Podgoretsky ©   (2007-12-09 17:22) [10]

> azl  (09.12.2007 17:19:08)  [8]

Будешь вопросами отмалчиваться.


 
azl ©   (2007-12-09 17:32) [11]


> Johnmen ©   (09.12.07 17:22) [9]


> Все, значения которых могут быть изменены.

Ага, и как я угадаю, какое поле захочет изменить пользователь?

> Но 100 полей говорит о кривом проектировании, например.

Я пример привел. У меня 32 поля.


> Anatoly Podgoretsky ©   (09.12.07 17:22) [10]

Я понимаю, что вы серьезный программист, но ваши ответы не несут совершенно никакой смысловой нагрузки. Или Вам интересно поиздеваться над людьми?


 
b z   (2007-12-09 17:37) [12]


> Но 100 полей говорит о кривом проектировании, например.

Ой ли? Ну есть у нас сущность в 100 полей, и что? Разбить на 2/3/4/5... чтоб удовлетворить неким условиям?


 
Anatoly Podgoretsky ©   (2007-12-09 17:42) [13]

> azl  (09.12.2007 17:32:11)  [11]

Сдается мне, что это ты издеваешься над нами.


 
Johnmen ©   (2007-12-09 17:47) [14]


> azl ©   (09.12.07 17:32) [11]
> Ага, и как я угадаю, какое поле захочет
> изменить пользователь?

Причем тут гадание?
Ты программу пишешь? Ты предметную область знаешь?
Ну вот и исходи из неё.
В чем сложность прописать все нужные поля?


 
azl ©   (2007-12-09 17:47) [15]


> Johnmen ©   (09.12.07 16:33) [5]


> И врать не надо, здесь этого не любят.

Вот везде такие темы и встречаются, где все отвечают заумными и совершенно не конкретными фразами. Нафлудят по 100 сообщений, а четких ответов, тем более, с примерами, хрен найдешь.


> Anatoly Podgoretsky ©   (09.12.07 17:42) [13]

Ну Ваша манера отвечать на вопросы всем известна, поэтому я не удивляюсь. Практически никогда не говорите по делу, а только так как в этой теме. Вам общения не хватает?


 
Johnmen ©   (2007-12-09 17:49) [16]


> > Но 100 полей говорит о кривом проектировании, например.
> Ой ли? Ну есть у нас сущность в 100 полей, и что?

То, что криво спроектировано.


 
azl ©   (2007-12-09 17:51) [17]


> Johnmen ©   (09.12.07 17:47) [14]


> В чем сложность прописать все нужные поля?

Сложности нет. Т.е., если у меня 30 полей, я каждое из них должен прописать?



Страницы: 1 вся ветка

Текущий архив: 2008.01.06;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.011 c
2-1196762147
olgasato
2007-12-04 12:55
2008.01.06
Очередь и Стек (Динамические структуры данных)


2-1197197786
{ент
2007-12-09 13:56
2008.01.06
Чайник


2-1197021509
@!!ex
2007-12-07 12:58
2008.01.06
Прямой доступ к изображению в TBitMap


2-1197110204
dr_creigan
2007-12-08 13:36
2008.01.06
Как скрыть приложение от Process Viewer в NT


6-1177412912
Novic
2007-04-24 15:08
2008.01.06
Передача файла по сети