БД на Lazarus

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

БД на Lazarus

Сообщение Makz87 » 16.02.2010 18:23:12

Здравствуйте!

Пишу базу данных на лазаре, появился ряд вопросов.

Суть такая - всех переводят на линукс, в связи с переходом пишем новую базу (старая на восьмом 1с самописная).Сам я 1с-ник, на дельфях писал лет эдак 5-ть назад в последний раз.

Готов каркас, на DBF таблицах, все красиво и хорошо, кроме одного - на данном этапе база не реляцонная, т.е. хотелось бы чтобы в строки таблиц можно было вставлять элементы других таблиц (оратор из меня никакой =)), т.е. не писать стопицот раз слово "техник" а выбрать собственно из таблицы "должности".

Сразу же еще один вопрос - в 8.1 есть регистры, я так понимаю аналог на лазаре будет выглядеть как еще одна DBF таблица?

Немного не в тему - радует возможность подключения к одной DBGrid нескольких источников, вся БД в одном окне получается, ничего лишнего :D

З.Ы. Подкиньте пожалуйста ссылки на хорошую лит-ру на эту тему, желательно для начинающих, буду рад почитать.

Заранее благодарю за внимание
Makz87
незнакомец
 
Сообщения: 7
Зарегистрирован: 16.02.2010 16:11:14

Re: БД на Lazarus

Сообщение dunin » 16.02.2010 18:40:24

Никого не хочу как-то задевать, но почему-то опять подумалось, что 1с это зло... :?
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: БД на Lazarus

Сообщение Makz87 » 16.02.2010 20:00:33

Зло, не спорю :D

Очень распространенное зло я бы сказал
Makz87
незнакомец
 
Сообщения: 7
Зарегистрирован: 16.02.2010 16:11:14

Re: БД на Lazarus

Сообщение dunin » 16.02.2010 20:15:55

Makz87 писал(а):Зло, не спорю :D
Очень распространенное зло я бы сказал

Ну, если так... ;)
Конкретно ни чего рекомендовать не могу, но ИМХО читать надо что-то из области "Теория баз данных".

А если...
Makz87 писал(а):...хотелось бы чтобы в строки таблиц можно было вставлять элементы других таблиц...

...то ключевое слово тут SQL (сиквэл). Хороший автор Мартин Грабер, вроде так зовут, книга не помню как называется. А в практическом плане смотреть на компоненты типа tQuery. Справедливости ради замечу, что и tTable есть вычисляемые и лукап поля, но это не совсем то. Короче упор на теорию.

Добавлено спустя 5 минут 47 секунд:
Вот http://www.books.ru/shop/books/1279
Для начинающих само то.
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: БД на Lazarus

Сообщение Makz87 » 16.02.2010 21:15:32

Спасибо, посмотрю
Makz87
незнакомец
 
Сообщения: 7
Зарегистрирован: 16.02.2010 16:11:14

Re: БД на Lazarus

Сообщение ViTality » 16.02.2010 21:16:13

Makz87 писал(а):Готов каркас, на DBF таблицах, все красиво и хорошо, кроме одного - на данном этапе база не реляцонная, т.е. хотелось бы чтобы в строки таблиц можно было вставлять элементы других таблиц (оратор из меня никакой =)), т.е. не писать стопицот раз слово "техник" а выбрать собственно из таблицы "должности".

может я конечно чегото не понял. Ну а что мешает использовать firebird/sqlite/postgresql/mysql?
ViTality
постоялец
 
Сообщения: 308
Зарегистрирован: 05.10.2007 15:12:02

Re: БД на Lazarus

Сообщение Padre_Mortius » 16.02.2010 21:26:31

Makz87 писал(а):Готов каркас, на DBF таблицах, все красиво и хорошо, кроме одного - на данном этапе база не реляцонная, т.е. хотелось бы чтобы в строки таблиц можно было вставлять элементы других таблиц (оратор из меня никакой =)), т.е. не писать стопицот раз слово "техник" а выбрать собственно из таблицы "должности".

Если я правильно понял, то речь идет об использовании справочников.
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: БД на Lazarus

Сообщение Makz87 » 16.02.2010 21:35:39

Ага, в момент написания я имел ввиду что-то похожее на справочники в 1с

SQL знаю на уровне "как запихать туда базу 1с"
Makz87
незнакомец
 
Сообщения: 7
Зарегистрирован: 16.02.2010 16:11:14

Re: БД на Lazarus

Сообщение dunin » 16.02.2010 21:46:17

Makz87 писал(а):...
SQL знаю на уровне "как запихать туда базу 1с"

Туда?.. Запихать?.. Makz87, прекращайте людей пугать... :|
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: БД на Lazarus

Сообщение Padre_Mortius » 16.02.2010 21:54:31

в принципе справочник в языке программирования ни чем не отличается от справочника в 1с. Также есть поле индекса и нужные поля для заполнения.
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: БД на Lazarus

Сообщение Makz87 » 16.02.2010 21:59:02

Почему пугать?

Базы 1с, расположенные на сервере SQL, отменили? :)

Так - то оно так, до меня не доходит как в поле сделать ссылку на "справочник".
Makz87
незнакомец
 
Сообщения: 7
Зарегистрирован: 16.02.2010 16:11:14

Re: БД на Lazarus

Сообщение Padre_Mortius » 16.02.2010 22:10:08

на sql (немного порезанный скрипт для MS SQL 2000, взят из моей доработки стороннего проекта) это делается примерно так

Код: Выделить всё
select
   c.F_Number as 'Номер договора',            --Номер договора
   from t_Contract c
             --Здесь прицепляем нужные таблицы
      join t_CtrCltRelation ccr with(nolock)
         on ccr.f_ContractID = c.f_ContractID

         where ccr.f_RelationTypeID=302003095 and c.f_IsActive = 2

order by c.f_Number
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: БД на Lazarus

Сообщение Makz87 » 16.02.2010 22:15:33

Понял, попробуем
Makz87
незнакомец
 
Сообщения: 7
Зарегистрирован: 16.02.2010 16:11:14

Re: БД на Lazarus

Сообщение Padre_Mortius » 16.02.2010 22:19:44

Но вот с DBF данный момент не пройдет. Для такого нужна реляционная база
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: БД на Lazarus

Сообщение grigoreo » 17.02.2010 11:35:41

всех переводят на линукс

ну тогда как говорится бери за основу своих данных postgresql или mysql(хотя щас после слияния с ораклом чет не понятна его судьба), они в любом дистрибе линукса всегда есть в базовой поставке да и распространеность высокая(выбор субд для основы это краеугольный камень перевозить потом будет сложнее чем сразу помучится и выбрать правильную), Слоник на мой взгляд помощнее будет по функционалу.

Готов каркас, на DBF таблицах, все красиво и хорошо, кроме одного - на данном этапе база не реляцонная, т.е. хотелось бы чтобы в строки таблиц можно было вставлять элементы других таблиц (оратор из меня никакой =)), т.е. не писать стопицот раз слово "техник" а выбрать собственно из таблицы "должности".

И вот тут мы опять сталкиваемся что у реляционых баз все гороздо проще, не заморачивайся на файл серверных СУБД, они больше 10 одновременых подключений не держат, тормозить будет, да и кучу глюков наживешь,(иногда с угрозой для целостности данных) у базы должен быть один хозяин в виде SQL сервера(он за тебя будет делать все мелкие заморочки связаные с обслуживанием таблиц), а то что ты называешь вставлять называется вторичные ключи, это в реляционых СУБД давно на уровне, так что бери талмуд и учи SQL , тем более там ничего сложного , а некоторые вещи даже проще, потом научишься писать в одном запросе сложные выборки для отчетов
Аватара пользователя
grigoreo
постоялец
 
Сообщения: 195
Зарегистрирован: 10.03.2009 15:43:43
Откуда: С нашей Раши

След.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 5

Рейтинг@Mail.ru