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

Вниз

добавление записи в базу   Найти похожие ветки 

 
Evgenija ©   (2004-04-16 12:01) [0]

У меня таблица оракла и ид формирую сама.Куда мне вставить(в какое событие) процедуру формирования этого ключа при добавлении новой записи


 
Курдль ©   (2004-04-16 12:14) [1]


> Куда мне вставить

ГУСАРЫ!!! МОЛЧА-А-А-А-АТЬ!!!!


 
Anatoly Podgoretsky ©   (2004-04-16 12:17) [2]

Как добавляешь, вот туда и вставлять


 
Курдль ©   (2004-04-16 12:17) [3]

Уникалные ID, как правило, формируют с помощью SEQUENСE.
В Оракле Ваша самодеятельность не приветствуется.


 
Evgenija ©   (2004-04-16 13:59) [4]


> Курдль

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


 
bushmen ©   (2004-04-16 14:01) [5]

Лучше всего было бы все это оформить хранимой процедурой.


 
Vlad ©   (2004-04-16 14:05) [6]

Можно на событие OnNewRecord, но ID всеже лучше получать из sequence


 
bushmen ©   (2004-04-16 14:07) [7]

>по ид распределены права доступа

Т.е. id у Вас не identity?


 
myor ©   (2004-04-16 14:08) [8]

если бы id формировал oracle, имел бы смысл триггер, а так - [5].


 
serge35   (2004-04-16 14:10) [9]

Непонятно, как по ID можно распределять права доступа?
А ROWID к этому случайно нельзя приспособить?


 
Курдль ©   (2004-04-16 14:48) [10]


> база у меня большая и по ид распределены права доступа программа
> у меня на аксессе работает ид формируется я хочу перевести
> на дельфи как сделать здесь незнаю, но очень надо

Я мало, что понял, особенно о программе на аксессе... Но постараюсь рассказать, как это делаю я.
1. В оракле права на отдельные записи распределяются иным способом.
2. Никаких триггеров и ХП, как говорили ранее, Вам не потребуется, если будете пользоваться правильными компонентами доступа типа DOA.

Так, например, TOracleDataSet, из их набора, имеет свойство SequencedField, в котором прописывается поле ID, последовательность, от которой оно получает свежие значения и событие, по которому это происходит (onNewRecord, onPost, onServer). Таким образом, если в наборе данных с кэшированными обновлениями Вы добавляете запись, то указанному полю автоматом добавляется новое уникальное значение.


 
Курдль ©   (2004-04-16 16:33) [11]

А, кстати, еще правильный и изящный способ "вставить" :)

1. Создать последовательность для идентификаторов таблицы

CREATE SEQUENCE TEST_SEQ
/

2. В каждом SQL предложении добавления записи прописывать

INSERT INTO TEST_TABLE (TEST_IDENTIFIER,  TEST_NAME)
                VALUES(TEST_SEQ.NEXTVAL,:TEST_NAME)
/



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

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

Наверх




Память: 0.46 MB
Время: 0.041 c
8-1077019218
Qwer
2004-02-17 15:00
2004.05.16
Слои


14-1081866686
Maxim Vetera
2004-04-13 18:31
2004.05.16
К вопросу о матрице ...


14-1082738176
VictorT
2004-04-23 20:36
2004.05.16
Не могу найти... Как в РТФ описываются таблицы?


1-1083144254
Koliaff
2004-04-28 13:24
2004.05.16
Распечатка PaintBox.


1-1082870526
Schummi
2004-04-25 09:22
2004.05.16
Быстрое заполнение AdvStringGrid





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский