|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
09.03.2008, 14:17 | #1 (permalink) |
Новичок
Регистрация: 12.09.2007
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Заранее всем уделившим внимание спасибо. |
09.03.2008, 14:17 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Так же полезную информацию вы можете найти тут Opera. Обновление Непонятное обновление |
13.03.2008, 22:56 | #2 (permalink) |
Новичок
Регистрация: 12.09.2007
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Для простоты пусть у меня есть таблица всего из трёх полей :
- ID (первичный ключ) - Name (строковое поле). - Date_From (служебное поле, дата ввода, это поле нельзя изменять) В своей программе я изменяю(добавляю,удаляю,редактирую) данные и вношу изменения в dataset. Но редактировать я могу только ID и Name. Добавляю в dataset так : dataSet1.MYTABLE.Rows.Add(NewRow); Удаляю из dataset так : dataSet1.MYTABLE.FindByID(Del_ID).Delete(); Вношу изменения в dataset так : dataSet1.MYTABLE.FindByID(Up_ID)[1] = textBox1.Text; Теперь я хочу обновить саму базу данных. Для этого я использую oleDataAdapter. Для этого я в CommandText пишу : - для DeleteCommand: DELETE FROM "MYTABLE" WHERE (("ID" = ?) AND ("NAME" = ?) AND ("DATE_FROM" = ?)) - для InsertCommand: INSERT INTO "MYTABLE" ("ID", "NAME","DATE_FROM") VALUES (?, ?, ?) - для SelectCommand: SELECT MYTABLE.* FROM MYTABLE - дляUpdateCommand: UPDATE "MYTABLE" SET "ID" = ?, "NAME" = ?, "DATE_FROM" = ? WHERE (("ID" = ?) AND ("NAME" = ?) AND ("DATE_FROM" = ?)) У меня возникла проблема: Если оставить Update как здесь написано, то возникает ошибка "ORA-20201: Программная ошибка! Попытка обновления служебного поля!" Но по идее в update в SET не должно быть "DATE_FROM"=? , но если его убрать, то возникает другая ошибка "ORA-01008: не все переменные привязаны". Вот меня и мучает вопрос: что я делаю не так? Подскажите пожалуйста ответ на этот вопрос или может вы знаете какой-нибудь другой способ обновления данных в БД. Заранее всем спасибо. P.S. Ещё подскажите как организовать каскадное удаление. |
20.05.2008, 14:27 | #3 (permalink) |
Новичок
Регистрация: 17.05.2008
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
В книге С.В.Глушакова "DELPHI 2007" (стр. 474) это решение описано так:
...Чтобы не изменять значение какого-либо поля, ему необходимо присвоить значение NIL. В этом случае прежнее значение поля будет сохранено без изменения. Редактирование записи с помощью метода SetFields может выглядеть примернотак: ADOTable1.Edit; ADOTable1SetFields(['0284','Порошок стиральный',NIL,500]); ADOTable1.Post; При выполнении приведенного выше кода первому полю текущей записи присваивается значение '0284' , второму полю - 'Порошок стиральный', третье поле НЕ ИЗМЕНЯЕТСЯ , а четвертое получает значение 500. ... |
03.11.2009, 15:36 | #5 (permalink) |
Member
Регистрация: 01.01.2009
Сообщений: 13,189
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 415
|
Altai, Прошу прощения за нескромный вопрос... А из какого дистрибутива вы его (загрузочный диск) собираетесь лепить?
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
03.11.2009, 15:43 | #8 (permalink) |
Member
Регистрация: 20.12.2007
Сообщений: 42
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
да именно , саму винду сейчас качаю с http://qiq.ru/28/04/2009/operating_s...8.html?rk=5239
|
03.11.2009, 15:47 | #9 (permalink) | |
Member
Регистрация: 01.01.2009
Сообщений: 13,189
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 415
|
Цитата:
|
|
03.11.2009, 15:49 | #10 (permalink) |
Member
Регистрация: 19.01.2007
Сообщений: 2,728
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
01pump, он наверное имеет ввиду кучу образов для дискет, которые перевести в 1 загрузочный СД образ
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|