Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Переход к Oracle9 проблема с уиникальным полем [D6]


Страницы:   1 2

Evyshka ©   (2004-11-23 17:27:00) 

До этого была БД ключевое поле считалось по функции  с использованием  table.IndexFieldNames т.е сортировка по индексному полю - поиск пропуска - если нет то обавление
А при использовании TOraTable на этом месте вылетает ошибка
Может теперь можно это реализовать какой то встроенной функцией или запросом????


Evyshka   (2004-11-25 17:18:00) [1]

а как же типа так каждую запись update делать?


Fay   (2004-11-25 03:03:00) [2]

2 vecna ©   (25.11.04 1:13) [19][Ответить]
merge не работает с политиками доступа


vecna   (2004-11-25 01:13:00) [3]

rtfm
merge (>=9i)

или тривиальный универсальный вариант:

update table...;
if SQL%NOTFOUND then
 insert into table...
end if;


Evyshka   (2004-11-24 17:12:00) [4]

Убрала одно ненужное поле :-)))
Проблема теперь в следующем :-)) НАдо сделать прием dbf таблицы в таблицу Oracle. Если запись найдена то ее обновить а если нет то добавить.
Вопрос каждую запись проверять построчно???

Извиняюсь за кадровую формулировку :-)))


roottim   (2004-11-24 11:02:00) [5]

не советую искать дыры в последовательнотсях. Отвыкайте от ненужного.
временно вам может помочь такая ф-я (непроверил.. но должна сработать. id должен быть pk или индексирован)


create or replace function GEtNEwID return number
is
 i number := 1;
 res number;
begin
while i <= 10000 loop --limit
 select id into res from my_table where id = i;
 i := i + 1;
end loop;
exception
 when others then
   return i;  
end;


Reindeer Moss Eater   (2004-11-24 10:48:00) [6]

Так она же "вылетает". Как её покажешь?


ЮЮ   (2004-11-24 10:44:00) [7]

>А при использовании TOraTable на этом месте вылетает ошибка

А показать это место и указать какая ошибка - скромность не позволяет?


Sergey13   (2004-11-24 10:44:00) [8]

2[13] Evyshka   (24.11.04 10:39)
>не развожу мне кажется что я так все понятно написала
Только тебе и понятно. 8-) У тебя и БД под руками и проект свой ты видишь, а мы только догадываться можем - что у тебя там.


Evyshka   (2004-11-24 10:39:00) [9]

не развожу мне кажется что я так все понятно написала :-))))


Sergey13   (2004-11-24 10:36:00) [10]

2[11] Evyshka   (24.11.04 10:28)
Не, ну ты разводишь всех что ли? 8-) Ты программист или инспектор отдела кадров?


Evyshka   (2004-11-24 10:28:00) [11]

Нет не лень :-))
Идет прием информации по полю Field1(имеется ввиду проверка при приеме по этому полю если найдено такое значение то запись редактириется если нет  то добавляется) при добавлении формируется уникальное поле Field2 - номер по порядку(проверка следущая если 12345 то присваиваиться 6 , если 12456 то присваивается 3)


Sergey13   (2004-11-24 10:17:00) [12]

2[8] Evyshka   (24.11.04 10:11)
А если то же самое, но в терминах БД. Тебе первичный ключ нужно проверять? Откуда идет прием информации? Как формируется это твое уникальное ключевое поле. Может тригером?
Тебе лень писать подробно?


Johnmen   (2004-11-24 10:14:00) [13]

GetPeopleInformation
эта ?


Evyshka   (2004-11-24 10:11:00) [14]

Нужна функция приема инвормации по людям в базу, при этом у них формировалось уникальное ключевое поле, если информация повторяется то принимать поверх


Johnmen   (2004-11-24 09:54:00) [15]

А что там SEQUENCE ?


Sergey13   (2004-11-24 09:51:00) [16]

2[5] Evyshka   (24.11.04 09:44)
Начни с того, что никто с форума не видел твоей задачи, даже компьютера твоего не видели. Формулируй вопросы понятно для всех, если хочешь получить ответ.

>нужна функция приема
Стеклотары? Платежей за мобилу?


Evyshka   (2004-11-24 09:44:00) [17]

нужна функция приема если значение поля не найдено то оно формируется как уникальное, если найдено то запись редактируется


Sergey13   (2004-11-24 09:37:00) [18]

2Evyshka  
Странный переход к Ораклу. Зачем Табл то нужен вообще?

>До этого была БД
Какая?

>ключевое поле считалось по функции  
Это как? Какое значение у слова "ключевое"?


Reindeer Moss Eater   (2004-11-24 09:21:00) [19]

Если честно, то тебя тоже никто здесь не понимает.


Evyshka   (2004-11-24 08:58:00) [20]

Если честно не поняла как. А если пропуск тоже он присвоит???


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо