Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];

Вниз

Удаление записи через RxDBGrid   Найти похожие ветки 

 
orion_st   (2002-12-18 11:53) [0]

Как сортировать элементы в БД в TTable? Пока я это делаю через SQL запрос ORDER BY и рез-тат вывожеу в RXDBGrid.
При этом, по выделенной ячейке мне надо удалять запись из БД.
Использую RxDBGrid1.SelectedField.dataset.delete;
Естественно, мне ругается что ReadOnly, т.к. рез-тат запроса.
Так вот вопрос, как можно в такой ситуации удалить запись из БД?


 
VAleksey   (2002-12-18 12:01) [1]

DELETE
FROM "Table1.db"
WHERE // условие из SelectedField :))
Query1.Close;
Query1.Open;


 
FreeLancer   (2002-12-18 12:01) [2]

Интересно, как это ты запрос в TTable смог засунуть...
А вот к TQuery можно пристегнуть TUpdateSQL и делать Insert, Update, Delete и Refresh


 
Prooksius   (2002-12-18 12:03) [3]

В TTable устанавливаешь нужный IndexName.
Help на TTable.IndexName почитай


 
orion_st   (2002-12-18 12:55) [4]

Ну ставлю я IndexName, а при добавлении новой записи, ругается, что ReadOnly. :( Нигде ничего про это не нашел.

Table1.Exclusive := True;
Table1.IndexDefs.Update;
for I := 0 to Table1.IndexDefs.Count - 1 do
if Table1.IndexDefs.Items[I].Fields = "EvntTime" then
Table1.IndexName := Table1.IndexDefs.Items[I].Name;
Table1.Exclusive := False;


 
orion_st   (2002-12-18 12:56) [5]

Ну ставлю я нужный IndexName, а при добавлении новой записи, ругается, что ReadOnly. :( Нигде ничего про это не нашел.


 
FreeLancer   (2002-12-18 13:05) [6]

CachedUpdates := false;
RequestLive := true;


 
Johnmen   (2002-12-18 13:41) [7]

>FreeLancer © (18.12.02 13:05)

Вот ты смеялся вчерась над старым больным человеком, а сам даже в хелп не смотришь...свойства TTable...печально...


 
FreeLancer   (2002-12-18 13:43) [8]

Прости старый, но я здесь писал только про TQuery. Я спрашивал как это он запрос в TTable засунуть исхитрился.


 
orion_st   (2002-12-18 14:09) [9]

Я запрос через TQuery проводил. И хочу вообще от него уйти, чтобы сортировалось без запросов, а какими-либо еще средствами.


 
FreeLancer   (2002-12-18 14:13) [10]


> Я запрос через TQuery проводил. И хочу вообще от него уйти,
> чтобы сортировалось без запросов, а какими-либо еще средствами.

Извини, это я на выпад Johmen"а отвечал, а вот TQuery на TTable, я лично, не променял бы.


 
orion_st   (2002-12-18 15:11) [11]

Тогда подскажи,
я пишу запрос:
Query2.SQL.Text:="DELETE FROM "business.db" WHERE (EvntTime="13:55:43") AND (EvntDate="18.12.02") AND (Msg="1111")";

Подобная запись есть, но она этим запрослм не удаляется. Если я удаляю только по значению в Msg, то запись удаляется.
EvntTime - тип Time
EvntDate - nип Date

Что в запросе неверно?


 
ЮЮ   (2002-12-19 03:58) [12]

WHERE (EvntTime="13:55:43")
Там ёщё и милисекунды есть наверное. А более существенных полей, чем время, в таблице нет? А зря


 
orion_st   (2002-12-19 10:03) [13]

Других полей нет, только те три. А это время, я из DateTimePicker беру: что выдавалось, то я в БД и записывал. Я уверен, что если поменяю тип записи Date и Time на текст, то все будет нормально удаляться, но не очень хочется.


 
ЮЮ   (2002-12-19 10:09) [14]

>Других полей нет
И это называется БИЗНЕСС ? Дата, время и сообщение :-)
Добавь хотя бы поле, по которому можно создать первичный уникальный индекс.


 
orion_st   (2002-12-19 10:47) [15]

И что мне это даст? Проблема обращения с запросом к тем же полям все равно останется.


 
ЮЮ   (2002-12-19 10:54) [16]

Тогда будет "DELETE FROM "business.db" WHERE ID = ... , а ID у записи никто не меняет.


 
orion_st   (2002-12-19 11:53) [17]

Помогло, спасибо. :)



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

Форум: "Базы";
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.01 c
14-37361
Max Zyuzin
2002-12-24 19:58
2003.01.13
Остерегайтесь!!!


14-37317
123000
2002-12-21 16:48
2003.01.13
M$ WAB


14-37324
ScableR
2002-12-24 02:57
2003.01.13
D6 или D7


1-37025
Nikolay Enby
2003-01-02 00:16
2003.01.13
Работа со словарем


3-36941
stoper
2002-12-17 21:31
2003.01.13
DBGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский