MS SQL есть пара вопросов, кто может, помогите.

Димитрий
Дата: 12.12.2002 12:42:46
1)Есть таблица с двумя полями:Первое, типа int - ключевое Второе типа char
Как в MS SQL создать последовательность для генерации ключей от 1 до бесконечности с шагом 1 при вставке значений в таблицу?
2) В MS SQL создать таблицу с двумя полями, первое - время и дата начала работы (по умолчани текущее время), второе - время и дата окончания работы не должно превышать время начала более, чем на 4 часа?

P.S. Для кого это не сложно, ответьте пожалуйста. Очень надо.
Julius
Дата: 12.12.2002 13:04:27
по первому вопросу - установить свойство Identity(1,1) соответствующего поля
по второму - для первого поля установить значение по умолчанию getdate(), и сделать ограничение CHECK, в котором написать, что datediff(hour, Дата2,Дата1) <= 4
Сергей Тихонов
Дата: 12.12.2002 15:59:25
Можно делать генераторы своими руками. Одна таблица, пара процедур. автоинкремент не всегда удобен.
Tung
Дата: 12.12.2002 16:02:57
indentity не подойдет, к применру если прошел откат какой-то транзакции, то вследующий раз индентити будет на единицу больше. так что могут выпадать значения.
Белов Владимир
Дата: 12.12.2002 18:31:02
Что значит откат транзакции
Если транзакция закомичена, то ты её уже не откатишь.
А если транзакция рухнула после вставки значения, то и идентити не прокатит. Правда, при грамотно написанном коде.