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

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

MySQL 5.0 - "клон" Interbase ?


Страницы:   1 2 3

MsGuns ©   (2008-06-24 11:20:00) 

Вчера писал рецензию на дипломную работу и, просматривая раздел записки с описанием скрипта создания БД, наткнулся на генераторы, триггеры After/Befor, UDF-ки и прочие интербэйзовые штучки.
Был зело удивлен


PEAKTOP   (2008-06-25 18:53:00) [21]

> SEQUENCE только и умеет что "1" прибавлять.
> Генераторы же прибавляют и убавляют что угодно, тем самым много более полезны.
> Имхо, оставят :)

Возможно, в Оракле так и есть - конкретно систаксис и особенности Оракла я не знаю, так что судить не могу.

> а в обратную сторону?

В ЖарПтице это не более чем, как замена одного служебного слова другим, GEN_ID никуда не денется. Удобства, конечно прибавилось: можно прямо в Insert делать автоинкремент без триггера INSERT INTO MY_TABLE(ID, NAME)VALUES(NEXT VALUE FOR <SEQUENCE_NAME>, 'VALUE');, но "внутрях" сервера ничего не поменялось. Также прирост значения SEQUENCE в Firebird в функции GEN_ID может быть отрицательным. Хочешь "расти" на вставке не на единицу, - пожалуйста, хочешь расти "в обратную сторону" - кто не дает ?

> Неплохо бы уточнить, что такое Сиквенс, а то слухи ходят разные, мол это какая то сверхособенная сущность.

Ничего нового. Просто в разных SQL серверах стали появляться транзитивно-независимые переменные (например, в MySQL они называются VARIABLES), которые используют в качестве генераторов уникальных значений по образу и подобию того, как в InterBase с давних времен использовали GENERATOR. Чтоб не путаться и иметь кросс-серверные скрипты создания метаданных БД договорились, что отныне они будут именоваться SEQUENCE у всех.


Правильный-Вася   (2008-06-25 16:40:00) [22]


> произвольный шаг - через небольшую самописную ф-цию:

а в обратную сторону?


Кщд   (2008-06-25 14:28:00) [23]

>Правильный-Вася   (25.06.08 11:00) [21]
произвольный шаг - через небольшую самописную ф-цию:
gen_id(p_sequence_name => 'sequence_name', p_step => :step)

не то?


Anatoly Podgoretsky   (2008-06-25 11:04:00) [24]

> MsGuns  (25.06.2008 9:49:19)  [19]

Неплохо бы уточнить, что такое Сиквенс, а то слухи ходят разные, мол это какая то сверхособенная сущность.


Правильный-Вася   (2008-06-25 11:00:00) [25]


> Оракл - ацтой, ini-файлы рулят!

оракл - это система уравления ини-файлами, только они зашифрованы
а ты не знал?
;)

> >Генераторы же прибавляют и убавляют что угодно, тем самым
> много более полезны.если не сложно, приведите пример выгоды
> от такого поведения?

да хотя бы то, что можно самому варьировать шаг генератора в любом месте, а не только при создании (хочу, добавлю 10, хочу - единицу), как в оракле
генераторы можноприменить ведь не только для создания искусственных первичных ключей


Ega23   (2008-06-25 09:50:00) [26]


> И ПРАВИЛЬНО делает


Оракл - ацтой, ini-файлы рулят!


MsGuns   (2008-06-25 09:49:00) [27]

Сиквенсы можно "вручную" устанавливать или сбрасывать как генераторы ? Если да, не вижу преимуществ вторых перед первыми.


Кщд   (2008-06-25 09:19:00) [28]

>Loginov Dmitry ©   (25.06.08 00:43) [17]
>Генераторы же прибавляют и убавляют что угодно, тем самым много более полезны.
если не сложно, приведите пример выгоды от такого поведения?
ни капли сарказма - действительно, интересно


Loginov Dmitry   (2008-06-25 00:43:00) [29]

> Возможно, в Вулкане (Firebird 3.0) снесем генераторы на
> фиг, так что вот вам время, чтобы плавно перейти на новый
> синтаксис SEQUENCE, типа это все давно обсуждалось и решение
> принято.


SEQUENCE только и умеет что "1" прибавлять.
Генераторы же прибавляют и убавляют что угодно, тем самым много более полезны.
Имхо, оставят :)


Petr V. Abramov   (2008-06-25 00:27:00) [30]

FB идет за синтаксисом Oracle - update...returning, sequence и т.д.
И ПРАВИЛЬНО делает


PEAKTOP   (2008-06-25 00:14:00) [31]

> MsGuns ©   (24.06.08 11:20)
> Был зело удивлен


А че удивительного - папа у обоих изделий один: Джим Старки. Его, по-моему, с MySQL 3.25 к разработке привлекли, видать маркетологи просчитали, что в комплекте с Джимом Старки MySQL Sun-у можно подороже загнать :)

Кто же мог подумать, что он свалит, чтобы разрабатывать свою СУБД, которая "будет работать в облаках" (смейтесь, смейтесь - дословная цитата: http://www.firebirdnews.org/?p=1742)

Скажу даже более - читал релизноты MySQL 6.0, который щаз в состоянии альфы. По тактико-техническим характеристикам шестерка уже из СУБД становиться в ряд с SQL-серверами (транзитивность-многоверсионность-изолированность-"ручной контроль транзакций"). Так что у нашего Птица появиться еще один конкурент.

> насколько я знаю, генераторов, равно как и sequence и прочих autoincrement в стандарте не было ?

Дык, кто ж его видел этот стандарт - самому интересно было поглядеть на эти самые SEQUENCE. Дима Еманов просто объявил - теперь есть синоним SEQUENCE. Возможно, в Вулкане (Firebird 3.0) снесем генераторы на фиг, так что вот вам время, чтобы плавно перейти на новый синтаксис SEQUENCE, типа это все давно обсуждалось и решение принято. Где именно обсуждалось - гугль так и не ответил. Видать, у них(разработчиков) между собой.


Игорь Шевченко   (2008-06-24 22:17:00) [32]

насколько я знаю, генераторов, равно как и sequence и прочих autoincrement в стандарте не было ? Или я совсем старый стандарт читал ?


Johnmen   (2008-06-24 17:31:00) [33]


> все ansi-iso*1999.pdf

Там во всех в них про стандарт "сиквенса"?

> а суть - одинаковая

Кто-то разве возражал?


Правильный-Вася   (2008-06-24 17:24:00) [34]


> А первый вопрос?

ключевое слово "сиквенс" появилось в FB как синоним генератора, потому как генератора в стандарте нет, а а сиквенс - есть, а суть - одинаковая

> Что конкретно из этой ссылки?

все ansi-iso*1999.pdf


Johnmen   (2008-06-24 17:14:00) [35]


> Правильный-Вася   (24.06.08 16:57) [9]

А первый вопрос?

> http://www.ncb.ernet.in/education/modules/dbms/SQL99/

Что конкретно из этой ссылки?


Поросенок Винни-Пух   (2008-06-24 17:04:00) [36]

я работал немного.
то была бд онлайнового сервиса (честно говоря игрухи) в которой велась некая статистика. меня попросили её несколько расширить.
попробовал начать с серверной логики - там голяк (4.х версия была)
пришлось писать обраьотку с клиента. начал с dbexpress, вроде все нормальноЮ, без проблем. пока не встретил пятерку. там авторизация была сделана как-то по другому и без костылей работать не удавалось.
перешел на прямой доступ (пакет от crlab). вот там все в шоколаде.


Правильный-Вася   (2008-06-24 16:57:00) [37]


> И что за "стандарт"? Где его почитать?

http://www.ncb.ernet.in/education/modules/dbms/SQL99/


MsGuns   (2008-06-24 16:47:00) [38]

>Johnmen ©   (24.06.08 16:40) [4]
>Да, стараются разработчики "недобазу", как тут кто-то говорил, привести в человеческий вид.

Интересно? а кто-нибудь из наших с нею работал ? Было бы любопытно услышать впечатления


Johnmen   (2008-06-24 16:46:00) [39]


> это в FB 2 для совместимости со стандартом, когда эти сиквенсы
> все-таки появились

Что это "это"?
И что за "стандарт"? Где его почитать?


Правильный-Вася   (2008-06-24 16:44:00) [40]

в смысле, когда появились в стандарте


Страницы:   1 2 3

Наверх

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