БД - Программирование - Рабочая Zona - Форум сисадминов
Воскресенье
12-Фев-2012, 00:21:21
sadmin.org
Приветствую Вас Прохожий | RSS
Главная Форум сисадминов Регистрация Вход
[ Новые сообщения · Онлайн консультации · Участники · Правила форума · Поиск · RSS ]
 
Страница 1 из 212»
Модератор форума: vip_777 
Форум сисадминов » Рабочая Zona » Программирование » БД (FireBird+Delphi 7.0)
БД
SemOtakuДата: Пятница, 13-Июл-2007, 15:04:52 | Сообщение # 1
Коллежский ассесор
Группа: Проверенные
Сообщений: 35
Награды: 0
Репутация: 0
Замечания: 0%
Статус: Offline
Понадобилось мне сделать базку по заказам и прочей фигне. Аля 1С Торговля и Склад, тока гораздо более гибкая и близкая сердцу, ибо сам пишу.
И вот какая трабла возникла. Сначала долго не мог вообще подружить дельфю с огнептицой. Потом таки нашёл, что компоненты Interbase всё-таки один в один подходят и фаербёрду. Теперь новый квест решаю. Есть база. В ней несколько таблиц, но не важно. В одну из таблиц добавляю запись. Заполнены все поля акромя ID. Он должен генериться генератором (есть такой) который запускается из триггера при вставке (тоже есть такой). Но этого не происходит. При попытке добавления (Isert into bla-bla-bla (...) values(...), при чём что из дельфи, что из самой базы) пишет, что иденик пуст, а он примари кей и быть такого не должно. Чё делать? Можно конечно самому их генерить в проге-клиенте, и заменить кнопочку на BDNavigator, но эт изврат по-моему какой-то. Должно же всё стандартными средствами работать. Или я чего туплю?

Админ-онемешнег-фотограф
 
HOT_TABychДата: Понедельник, 16-Июл-2007, 09:30:50 | Сообщение # 2
Группа: Удаленные





О это к Шизюку щас ему в аську стукну.
 
ШизюкДата: Понедельник, 16-Июл-2007, 09:46:14 | Сообщение # 3
Краевед
Группа: Проверенные
Сообщений: 36
Награды: 0
Репутация: 2
Замечания: 0%
Статус: Offline
Я вобще-то больше по мс скулю, с интербейсом не работал. Но что тебе мешает при вставке заполнять это поле любым значением (например, 0)? А в триггере твой генератор будет заменять его на правильное значение.
 
SemOtakuДата: Вторник, 17-Июл-2007, 10:13:48 | Сообщение # 4
Коллежский ассесор
Группа: Проверенные
Сообщений: 35
Награды: 0
Репутация: 0
Замечания: 0%
Статус: Offline
Шизюк, да ничё не мешает. Только в том и проблема, что тогда надо что-то с триггером делать, ибо он, можно сказать по книжке сделан smile
Code
CREATE TRIGGER TRIG_CLIENTS_ID_INS FOR CLIENTS  
ACTIVE BEFORE INSERT POSITION 1
AS
BEGIN
    IF (NEW.CLIENT_ID IS NULL)
    THEN NEW.CLIENT_ID = GEN_ID(GEN_CLIENTS_ID,1);
END

Другое дело, что была мысля, что должно же оно работать так, как задумывалось smile
Но это так-то фигня уже. Всё равно решил я отдельные запросы делать уже в самом клиенте на вставку и удаления. Там и напишу генератор.
Ещё вопросик, может кто подскажет, в дельфе какой компонент лучше использовать для отображения таблиц? DBGrid чёт мне не нравится...

Админ-онемешнег-фотограф

Сообщение отредактировал SemOtaku - Вторник, 17-Июл-2007, 10:14:56
 
ШизюкДата: Вторник, 17-Июл-2007, 11:31:25 | Сообщение # 5
Краевед
Группа: Проверенные
Сообщений: 36
Награды: 0
Репутация: 2
Замечания: 0%
Статус: Offline
DevExpress. Яндекс в помощь.
 
SemOtakuДата: Вторник, 17-Июл-2007, 13:38:26 | Сообщение # 6
Коллежский ассесор
Группа: Проверенные
Сообщений: 35
Награды: 0
Репутация: 0
Замечания: 0%
Статус: Offline
Шизюк,
Quote
DevExpress.
Она ж платная О_О
Так, нашёл вобщем аналог некий Ehlib. Вроде покатит. А так, DevExpress красивый, зараза... Так-то хотелось бы. Однако ж 400 баксов...

Админ-онемешнег-фотограф

Сообщение отредактировал SemOtaku - Вторник, 17-Июл-2007, 15:13:36
 
УмляутДата: Пятница, 20-Июл-2007, 15:38:26 | Сообщение # 7
25-й кадр
Группа: Проверенные
Сообщений: 157
Награды: 0
Репутация: 10
Замечания: 0%
Количество машин:: 40
Cтрана: Российская Федерация
Статус: Offline
Доброй охоты!

SemOtaku, я очень сожалею, что всего лишь Firebird`ный DBA, а не программер (на Дельфе ваял мелкие вспомогательные утили года так два назад - ща почти всё забыл). sad Думаю, с этим вопросом надо идти на форумы сайтов sql.ru или ibase.ru (вообще -то их мемберы пересекаются) - там реально народ в теме...


"Не бери в голову дурного, а в руки - тяжёлого!"(с)моё
 
SemOtakuДата: Понедельник, 23-Июл-2007, 13:15:06 | Сообщение # 8
Коллежский ассесор
Группа: Проверенные
Сообщений: 35
Награды: 0
Репутация: 0
Замечания: 0%
Статус: Offline
Да я в принципе видел. Ток там очень не любят людей, которые не хотят покупать лицензионный софт. Всё-таки они его пишут. А мне платный софт не актуален, так как я не програмер по сути, да и задача в данном случае стоит - для своей фирмы утилитку сделать.

Админ-онемешнег-фотограф
 
УмляутДата: Понедельник, 23-Июл-2007, 16:06:19 | Сообщение # 9
25-й кадр
Группа: Проверенные
Сообщений: 157
Награды: 0
Репутация: 10
Замечания: 0%
Количество машин:: 40
Cтрана: Российская Федерация
Статус: Offline
Доброй охоты!

Quote (SemOtaku)
Ток там очень не любят людей, которые не хотят покупать лицензионный софт.

А не надо никого посвящать в интимные подробности своих правоотношений с третьими лицами... Ты жаловался в технической плоскости - вот в ней же и проси совета: насколько я помню, там с этим порядок (особенно на sql.ru)

"Не бери в голову дурного, а в руки - тяжёлого!"(с)моё
 
pushkin42Дата: Понедельник, 23-Июл-2007, 19:35:05 | Сообщение # 10
Куровод, садист-укладчик
Группа: Администраторы
Сообщений: 1969
Награды: 9
Репутация: 36
Сеть: Гибридная
Количество машин:: 226
Cтрана: Российская Федерация
Город: Самара
Статус: Offline
Умляут, да ладно, при желании можно воспользоваться вторым FireBird'ом, он бесплатный в каких-то рамках. И проблем с ним особых не замечал:) SemOtaku, к тебе это относится больше других. Думай smile

Работаю за плюсики в репутацию и за пиво.

Ремонт компьютеров в Самаре

 
УмляутДата: Понедельник, 23-Июл-2007, 19:49:12 | Сообщение # 11
25-й кадр
Группа: Проверенные
Сообщений: 157
Награды: 0
Репутация: 10
Замечания: 0%
Количество машин:: 40
Cтрана: Российская Федерация
Статус: Offline
Доброй охоты!

pushkin42, а при чём тут второй файрбёрд? Во-первых, есть ненулевая вероятность, что прога на "двойке" поведёт себя иначе, нежели, скажем, на "полторашке". Во-вторых, "недвойка" тоже бесплатная. И в-третьих, проблема, ИМХО, не в компетенции DBA, а чисто программерЗкая...


"Не бери в голову дурного, а в руки - тяжёлого!"(с)моё
 
pushkin42Дата: Понедельник, 23-Июл-2007, 19:53:07 | Сообщение # 12
Куровод, садист-укладчик
Группа: Администраторы
Сообщений: 1969
Награды: 9
Репутация: 36
Сеть: Гибридная
Количество машин:: 226
Cтрана: Российская Федерация
Город: Самара
Статус: Offline
Умляут, ну это в тему о "лицензионности". У меня проблем с FB1.6 не возникло (разве что Boolean пришлось трансформировать в Integer).

Работаю за плюсики в репутацию и за пиво.

Ремонт компьютеров в Самаре

 
УмляутДата: Понедельник, 23-Июл-2007, 20:30:01 | Сообщение # 13
25-й кадр
Группа: Проверенные
Сообщений: 157
Награды: 0
Репутация: 10
Замечания: 0%
Количество машин:: 40
Cтрана: Российская Федерация
Статус: Offline
Доброй охоты!

Quote (pushkin42)
ну это в тему о "лицензионности"

Абсолютно не в тему. Если я правильно понял, имелось ввиду, что не любят прогеров, пишущих на нелицензионной Дельфе. С какого боку тут бесплатный Файрбёрд?


"Не бери в голову дурного, а в руки - тяжёлого!"(с)моё
 
vip_777Дата: Вторник, 24-Июл-2007, 12:56:37 | Сообщение # 14
Львицо
Группа: Модераторы
Сообщений: 285
Награды: 3
Репутация: 17
Замечания: 0%
Статус: Offline
*отделяю обсуждение языков программирования*

Реальность - это интерфейс для доступа к компьютеру
 
SemOtakuДата: Вторник, 24-Июл-2007, 13:01:26 | Сообщение # 15
Коллежский ассесор
Группа: Проверенные
Сообщений: 35
Награды: 0
Репутация: 0
Замечания: 0%
Статус: Offline
pushkin42, дак я вообще-то поэтому и своял базу на FB smile А сейчас в другом трабл. Мне DBGrid не нравится. Нашёл я какой-то бесплатный EhLib, но чем он отличается от дбгрида, толком так и не понял. Вот, думаю, мож запольщовать всё-таки вылеченый DevExpress?
Умляут, не только. Так же не любят прогеров, использующих ломаные компоненты.

Админ-онемешнег-фотограф
 
Форум сисадминов » Рабочая Zona » Программирование » БД (FireBird+Delphi 7.0)
Страница 1 из 212»
Поиск:


Copyright sadmin.org © 2012
Хостинг от uCoz