Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
Так как генераторов там я не нашел, вер. 9.02. Хотя оно особо не нужно, так как данные вносятся в базу с одного места, а остальные только просматривают их, но все таки как правильно поступать с этим сервером? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2006, 21:11 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
Плохо искал. Открывай BOL и ищи по словам: 1) default autoincrement 2) newid() --- http://www.rusug.ru] Портал рускоязычной группы пользователей Sybase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2006, 21:16 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
Автоинкремент не подойдет у меня и 4НФ есть. Так что я должен получить id и подставить его в другой кортеж связанный с заданным. А NEWID() возвращает какую-то срамоту, типа такой NEWID(*) 0x03f2052a0d444c229768ff52d8258283 Ладно, будет пока maxid+1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2006, 21:58 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
softТак как генераторов там я не нашел, вер. 9.02. А с каких х#$в они должны там быть ;)? все таки как правильно поступать с этим сервером? Использовать autoincrement или GET_IDENTITY(). ____________________________________ - Гарфилд, мышь! - Спасибо, я сыт! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2006, 22:19 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
softАвтоинкремент не подойдет у меня и 4НФ есть. Так что я должен получить id и подставить его в другой кортеж связанный с заданным. А теперь переведи эту заумь на русский язык . А NEWID() возвращает какую-то срамоту, типа такой NEWID(*) 0x03f2052a0d444c229768ff52d8258283 Ты BOL начнёшь читать, или где? NEWID() возвращает GUID. Ладно, будет пока maxid+1 Хреновое решение... ____________________________________ - Гарфилд, мышь! - Спасибо, я сыт! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2006, 22:24 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
softЛадно, будет пока maxid+1 Да будет так ... до первого "Primary key for table is not unique", а то и DEADLOCK ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2006, 22:46 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
>>GET_IDENTITY() То что доктор прописал... Да, в ASA генераторы сделаны правильно, генерация ведется не по левой переменной-генератору и по значению связанному с ключевым полем базы. А то newid()...newid()... тху. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2006, 23:33 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
ASCRUS wrote: > Да будет так ... до первого "Primary key for table is not unique", а то > и DEADLOCK Каждый сам себе злобный Буратино . Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2006, 12:10 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
softАвтоинкремент не подойдет у меня и 4НФ есть. Так что я должен получить id и подставить его в другой кортеж связанный с заданным. И в чем проблема? В корневой таблице пусть генерится по default (global) autoincrement, а в "наследнике" вставляется полученное значение. У меня подобное сделано элементарно - хранимая функция получения ID вызывается в таблице-наследнике в триггере before insert. А сама функция при вызове делает вставку в мастер-таблицу и получает вставленный ID через @@identity. Получается практически то же самое, что и наследование в PostgreSQL. Для полноты картины наследнику нужно только добавить триггер after delete для чистки базовой таблицы. А грубый аналог любимых IB-генераторов, если уж без них непривычно, очень легко сделать самому: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Где-то приводился более навороченный вариант с автоматической генерацией фейковых таблиц для identity, но это уж совсем для зверских извратов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2006, 20:36 |
|
||
|
В ASA для кроме Max(id)+1 есть механизм генерации первичного ключа?
|
|||
|---|---|---|---|
|
#18+
soft>>GET_IDENTITY() То что доктор прописал... Да, в ASA генераторы сделаны правильно, генерация ведется не по левой переменной-генератору и по значению связанному с ключевым полем базы. Вот именно. Это то, о чем часто твердят не только на этом форуме: если переходишь на другой сервер, лучше обрисовать более общую задачу, которую хочешь решить, чем искать полный аналог использовавшегося ранее инструмента. Часто можно найти средства лучше. Например identity (default autoincrement) в отличие от генератора учтет значения, которые "вручную" вставлялись в таблицу, а global autoincrement к тому же еще позволит распределить генерируемые значения по диапазонам, что удобно например в распределенных системах с несколькими БД. -- Портал русскоязычной группы пользователей Sybase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2006, 20:46 |
|
||
|
|

start [/forum/topic.php?fid=55&fpage=79&tid=2012682]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 364ms |

| 0 / 0 |
