Конференция "Начинающим" » Базы данных в делфи [D7]
 
  • Andrey5 © (08.04.14 19:48) [0]
    Подскажите пожалуйста. Имеется тестирующая программа, которая работает по локальной сети. Можно ли на серверной части создать базу данных Access, что бы в нее с клиентской части приходили результаты тестирования? Как это проще реализовать? Заранее Спасибо=)
  • Кщд (08.04.14 20:17) [1]
    >Andrey5 ©   (08.04.14 19:48)
    можно, но надо прочитать восемьсот двадцать три умных книги и тридцать лет учиться
    после этого набрать в google: delphi access пример
  • Andrey5 © (08.04.14 20:28) [2]
    Дело в том , что я могу подключить Access к delphi, но мне нужно что бы с клиента на сервер передавалась информация и база хранилась на сервере. Клиент только передавал данные в базу и все=)
  • Кщд (08.04.14 20:58) [3]
    Andrey5 ©   (08.04.14 20:28) [2]
    что не получается?
  • Andrey5 © (08.04.14 21:05) [4]
    Не получается передать информацию в БД. Т.к. она на другом компьютере на серверной части.
  • sniknik © (08.04.14 21:16) [5]
    > с клиента на сервер передавалась информация и база хранилась на сервере.
    трехзвенка
  • Andrey5 © (08.04.14 21:18) [6]
    Каким образом передавать информацию серверу?
  • Inovet © (08.04.14 21:19) [7]
    > [2] Andrey5 ©   (08.04.14 20:28)
    > я могу подключить Access к delphi

    Это который в МС Офисе или что?
  • Andrey5 © (08.04.14 21:21) [8]
    Да, который в МС офисе...
  • Кщд (08.04.14 21:22) [9]
    ах, да - access...
    ставим, например, firebird
    работаем
  • Inovet © (08.04.14 21:24) [10]
    > [8] Andrey5 ©   (08.04.14 21:21)
    > Да, который в МС офисе

    Т.е. ты подключаешь программу из МС Офиса через COM?
  • Andrey5 © (08.04.14 21:30) [11]
    Объясню с самого начала. Есть клиент-серверная программа. На клиентской части пользователь вводит свои данные и проходит тест(данные и результаты теста заносятся в текстовый файл, который передается на сервер).Сервер принимает файл. Клиент с сервером связываются по IP-адресу или по имени Host, если в лок. сети. Стрингрид считывает текстовые файлы и заносит в таблицу. Пришла просто идея , можно ли избавится от текстовых файлов, путем создания БД на сервере в которой хранить результаты.
  • Inovet © (08.04.14 21:37) [12]
    > [11] Andrey5 ©   (08.04.14 21:30)

    Теперь понятно. Тагда лучше не Аксес (который на самом деле не Аксес совсем). Возьми, как в [9], или другой возьми бесплатный - MS SQL, например.
  • Andrey5 © (08.04.14 21:40) [13]
    А если через ODBC ? Подключаться к Access?
  • Кщд (08.04.14 21:42) [14]
    >Andrey5 ©   (08.04.14 21:30) [11]
    >можно ли избавится от текстовых файлов, путем создания БД на сервере в которой хранить результаты.
    можно
    не париться с access(сервер приложений для такой задачи - как-то странно, при всём уважении к Николаю)
    взять, например, firebird
    решить проблему
  • Кщд (08.04.14 21:43) [15]
    Inovet ©   (08.04.14 21:37) [12]
    >MS SQL, например.
    только Oracle - только хардкор
  • Плохиш © (09.04.14 01:32) [16]
    Для D7 - WebService
  • sniknik © (09.04.14 08:10) [17]
    > только Oracle - только хардкор
    ээээ, да что вы понимаете? вот клиент-сервер для access без серверной части(трезвенки) на виндовых объектах RDS (DataFactory, DataControl), вот это хардкор... любой sql сервер по сравнению с этим "детские игрушки".
    а трехзвенка кстати, это не так уж и сложно как может показаться. единственное логика делится на 2 части клиентскую и серверную, но у автора уже так и есть, только на файлах.
  • Труп Васи Доброго © (09.04.14 09:09) [18]

    > Пришла просто идея , можно ли избавится от текстовых файлов,
    >  путем создания БД на сервере в которой хранить результаты.
    >

    Как то не вяжется... Ты же сказал, что база уже имеется, или это не так?
    Что получает клиент от "сервера"? Если ничего, то на кой тебе "текстовые файлы" с данными и гриды на сервере? Создавай на клиентской стороне сразу SQL запрос INSERT и передавай его "серверу", который его выполнит и всё, инфа в базе.
    Или поясняй подробнее что конкретно ты хочешь получить. Подробности давай!!!
  • Andrey5 © (12.04.14 18:56) [19]
    Спасибо, уже разобрался=)
  • Antonenko Aleks (14.04.14 13:33) [20]
    Access и сеть? Странный выбор... Советую почитать например про Firebird.
  • sniknik © (14.04.14 13:49) [21]
    > Access и сеть? Странный выбор...
    чем странный?
    у автора уже клиент сервер, и база ему нужна локально, для его сервера.
    никто же файл базы расшаривать и работать с ним с клиента не собирался/не советовал.
  • Inovet © (14.04.14 13:50) [22]
    > [21] sniknik ©   (14.04.14 13:49)
    > не собирался/не советовал

    Автор собирался, но никто не советовал так делать.
  • Дмитрий (14.04.14 18:47) [23]
    Клиент должен подключиться к БД с логами и кидать информацию туда.
    Но использовать для логов Акцесс не желательно - каждый новый пользователь будет притормаживать всю систему.
    Логи растут быстро, и все это тянется через сеть.
    Даже при относительно малом количестве пользователей задержка на дополнительный простой запрос к Акцессу может быть заметной.
  • sniknik © (15.04.14 08:27) [24]
    блин, гонево какое то на access.
    а на самом деле это отличная база, идеальная в своей нише в том для чего предназначена/должна использоваться, быстрая (быстрее оракла/mssql... на "своей территории" естественно)... так нет же "набигут" ламеры, начнут не читая доки/не изучая использовать где ни попадя, как им хочется, а не как нужно по спецификациям. и потом с умным видом всем говорят "access плохой, тормозной, глючный и т.д." с чем сами не справились из-за отсутствия знаний по предмету, в том у них access и виноват... ну не себя же любимого обвинять...
  • Dennis I. Komarov © (15.04.14 09:36) [25]

    > sniknik ©   (15.04.14 08:27) [24]

    +1
  • Dennis I. Komarov © (15.04.14 09:40) [26]

    > Клиент должен подключиться к БД с логами и кидать информацию
    > туда.

    Клиент должен подключаться к серверу, а сервер в БД класть то, что нужно.

    > Но использовать для логов Акцесс не желательно - каждый
    > новый пользователь будет притормаживать всю систему

    Очень интересно, это как?
    И откуда взялись "логи"?
  • Кщд (15.04.14 16:04) [27]
    >sniknik ©   (15.04.14 08:27) [24]
    Николай, можно пример "своей территории", на которой "быстрее оракла/mssql"?
  • Дмитрий (15.04.14 17:28) [28]

    > Dennis I. Komarov ©   (15.04.14 09:40) [26]
    > > Клиент должен подключиться к БД с логами и кидать информацию туда.
    > Клиент должен подключаться к серверу, а сервер в
    > БД класть то, что нужно.

    О, да.
    Это принципиально все меняет.
    Посыпаю голову пеплом.


    > sniknik ©   (15.04.14 08:27) [24]
    > блин, гонево какое то на access.

    Где конкретно гонево?
  • sniknik © (15.04.14 18:09) [29]
    > Николай, можно пример "своей территории", на которой "быстрее оракла/mssql"?
    это не теория, много раз проверяли, простые запросы к локальной базе (т.е. все, и клиент и сервер бд, устанавливается на 1 компе), access выполняет быстрее. но вот стоит только разнести установку (для mssql, access остается на 1) сервер и клиент на 2 машины, и становится быстрее mssql. в том же самом тесте.
    p.s. доказывать ничего не буду, хочешь сам проверяй. я уже давно тестами не занимаюсь, особенно для очевидных, для себя вещей.

    > Где конкретно гонево?
    > каждый новый пользователь будет притормаживать всю систему.
    > Даже при относительно малом количестве пользователей задержка на дополнительный простой запрос к Акцессу может быть заметной.
    практически весь пост гонево.
    p.s. да, можно написать и так, чтобы твои утверждения выполнились, что мы не программисты что-ли? но access в этом будет не виноват.
    p.p.s. ассоциативное про такие вот посты, и последующий "разбор" -
    - "кенийский спортсмен тормоз! еле двигается."
    - гонишь! он быстро бегает.
    - а если ему ноги переломать? вот то-то же! есть вариант когда я прав! (это то что предположительно будет, учитывая опыт подобных "споров")
  • Дмитрий (15.04.14 19:00) [30]
    и где у тс сказано про локальную базу?
    и где про локальную базу сказано у меня?
  • Dennis I. Komarov © (15.04.14 22:32) [31]

    > и где у тс сказано про локальную базу?



    > Можно ли на серверной части создать базу данных Access,
    > что бы в нее с клиентской части приходили тестирования?
    >  Как это проще реализовать?

    А где сказано, что клиент сам пишет в базу?
  • sniknik © (16.04.14 07:47) [32]
    > и где у тс сказано про локальную базу?
    > и где про локальную базу сказано у меня?
    вот как раз и начинается, сейчас будешь говорить, что понял так что "сначала кенийскому спортсмену нужно переломать ноги, и советы давать уже исходя из этого".
    а кто тебя просил понимать именно так? а советы давать "безапелляционно в общем" по access без указания "если сделать так , как ты понял"?
    поэтому и "гонево".
  • Дмитрий (16.04.14 15:51) [33]

    > Dennis I. Komarov ©   (15.04.14 22:32) [31]
    > А где сказано, что клиент сам пишет в базу?

    Ну-ка перечитайте, что написано у меня.
    Заодно, напомню, акцесс- файловая бд
    Не нужно выдумывать то, чего не говорилось.


    > sniknik

    При всем уважении, ты гонишь.
  • Dennis I. Komarov © (16.04.14 18:21) [34]

    > Ну-ка перечитайте, что написано у меня.
    > Заодно, напомню, акцесс- файловая бд
    > Не нужно выдумывать то, чего не говорилось.

    А смысл? Что хотите доказать, я не пойму?
  • Дмитрий (16.04.14 18:44) [35]
    Не нужно приписывать мне свои домыслы.
  • Труп Васи Доброго © (17.04.14 10:06) [36]

    > простые запросы к локальной базе (т.е. все, и клиент и сервер
    > бд, устанавливается на 1 компе), access выполняет быстрее.
    >

    Народ, вы вообще о чём? При чём тут Access?!?!?
    ТС сказал что на сервере "база Access", а что он под этим подразумевает только ему известно. Я так понимаю ,что у него на компе-сервере лежит файл(ы) *.mdb и какой то самопальный "сервер" BD, который неизвестно как подключается к этому *.mdb, например через BDE. Так что сам Access тут, скорее всего, совершенно не при делах и скорость его работы к данному вопросу совершенно неприменима.
  • Dennis I. Komarov © (17.04.14 12:17) [37]

    > Народ, вы вообще о чём? При чём тут Access?!?!?

    Да нет у ТС еще никакой базы, у него все в файлах (кстати, может и не самый плохой вариант:)))

    > Пришла просто идея , можно ли избавится от текстовых файлов,
    >  путем создания БД на сервере в которой хранить результаты.

    ну а дальше, кто во что горазд...
  • sniknik © (18.04.14 21:21) [38]
    >> Dennis I. Komarov ©   (15.04.14 22:32) [31]
    >> А где сказано, что клиент сам пишет в базу?
    > Ну-ка перечитайте, что написано у меня.

    Дмитрий   (14.04.14 18:47) [23]
    > Клиент должен подключиться к БД с логами и кидать информацию туда.
    прямо таки должен...

    > Народ, вы вообще о чём? При чём тут Access?!?!?
    совершенно не причем. но это и не значит что он не подходит автору топика в его задаче (в варианте который предлагал я - трехвенка, тем более как я понял она в каком то виде у автора уже есть, раз есть клиент и есть сервер с текстовыми файлами).
    а также неверно, что он "тормозной" или как там "каждый новый пользователь тормозит систему, и даже на малом количестве задержки коннекта к assecc заметны".
  • Дмитрий (21.04.14 15:57) [39]

    > sniknik ©   (18.04.14 21:21) [38]
    > ..> Народ, вы вообще о чём? При чём тут Access?!?!?совершенно
    > не причем. но это и не значит что он не подходит автору
    > топика в его задаче (в варианте который предлагал я - трехвенка,
    >  тем более как я понял она в каком то виде у автора уже
    > есть, раз есть клиент и есть сервер с текстовыми файлами).
    > а также неверно, что он "тормозной" или как там "каждый
    > новый пользователь тормозит систему, и даже на малом количестве
    > задержки коннекта к assecc заметны".

    Вы гоните, потому что плохо читаете.
    Где у меня сказано "не желательно", что никак не тождественно вашему "не подходит".
    Так же у меня сказано при "относительно малом количестве пользователей ", что никак не тождественно "малому количеству".
    У нас пользователей акцессной бд около 40 человек, что никак нельзя назвать большим.
    И бд не сказать, чтобы сильно большая, 100 метров.
    И запрос на сохранение какой-нибудь фигни может вызывать визуально заметную задержку.
    И это причина, что мне предложили ускорить и развить систему.
    Да, и к слову, наличие у тс трехзвенки - это гадалка вам подсказала.
    ТС хранит информацию в файлах.
    При наличии трехзвенки нет никакой нужды прибегать к акцессу.
  • Дмитрий (21.04.14 15:58) [40]
    В соседней ветке тс спрашивает как запрос кинуть, а вы про трехзвенку толкуете.
  • junglecat (21.04.14 17:51) [41]
    > При наличии трехзвенки нет никакой нужды прибегать к акцессу

    его можно использовать как большой клиентский датасет )
  • Palladin © (21.04.14 18:41) [42]
    кстати, mdb это мегаудобная вещь в плане мобильности
    что в определенных условиях и при определенных требованиях может быть решающим фактором
    субд вопще разворачивать не нужно
  • sniknik © (22.04.14 09:55) [43]
    > Да, и к слову, наличие у тс трехзвенки - это гадалка вам подсказала.
    почитай что такое трехвенка. и подумай, есть клиент есть сервер, сервер работает с данными (бизнес логика?) пусть и хранит их в файлах...
    научишься думать глядишь и у тебя "гадалка" заведется.

    > При наличии трехзвенки нет никакой нужды прибегать к акцессу
    да, а при наличии пикника нет никакой нужды прибегать к шашлыкам...

    можно и жаренным хлебом обойтись, или наоборот икоркой... но мне вот нравятся шашлыки, и на пикнике, и без него, и другим их советую, без оглядки смогут ли они их приготовить.
  • Дмитрий (22.04.14 14:11) [44]
    фантазируй дальше
  • semen (05.05.14 21:25) [45]
    >Дмитрий
    Не знаете, что такое Access, но рассуждаете :)

    Несколько вопросов по Delphi и Access
    http://articles.org.ru/cfaq/index.php?qid=2680
    И т.п.
    https://www.google.com/search?ie=utf8&as_q=access&as_sitesearch=articles.org.ru&Submit=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA
  • semen (05.05.14 21:40) [46]
    Andrey5
    Просто создай на сервере базу Acctss MDB и EXEшник обработки запросов, который будешь вызывать с клиентских машин. Никаких двух-трехзвенок не нужно :)
  • Inovet © (05.05.14 21:48) [47]
    > [46] semen   (05.05.14 21:40)

    Попдробней про вызов экзешника с клиентских машин.
  • sniknik © (05.05.14 23:04) [48]
    > Никаких двух-трехзвенок не нужно :)
    а что нужно? "однозвенка"?
  • Inovet © (06.05.14 09:31) [49]
    > [48] sniknik ©   (05.05.14 23:04)
    > "однозвенка"?

    Нользвенка. Юзер напрямую редактирует файл БД.
  • junglecat (06.05.14 10:15) [50]
    > Юзер напрямую редактирует файл БД

    даже без акцеса
  • Inovet © (06.05.14 10:27) [51]
    > [50] junglecat   (06.05.14 10:15)
    > даже без акцеса

    Именно напрямую.
  • Труп Васи Доброго © (06.05.14 10:39) [52]

    > Попдробней про вызов экзешника с клиентских машин.

    Ярлык программы с сервера на свой рабочий стол, куда уж подробнее :)
  • junglecat (06.05.14 10:48) [53]
    > Ярлык программы с сервера на свой рабочий стол

    просто, как всё гениальное
  • Дмитрий (06.05.14 16:02) [54]

    > emen   (05.05.14 21:25) [45]
    > >ДмитрийНе знаете, что такое Access, но рассуждаете :)

    Бггг
    Сижу на Акцессе и совсем не знаю.
  • semen (06.05.14 19:54) [55]
    junglecat
    Именно так.
    И самого Access действительно не нужно. Достаточно MSOffice и без него.
    Все для работы через microsoft.jet.oledb там уже есть

    Дмитрий
    Если сидишь, то должен (хотя бы через заднее место) знать, что это не "файловая" бд :)
  • Дмитрий (06.05.14 20:52) [56]

    > semen   (06.05.14 19:54) [55]
    >Если сидишь, то должен (хотя бы через заднее место) знать, что это не "файловая" бд :

    Несомненно, технология мдак, ДАО, АДО и т.п. ее прверащают в клиент-серверную.
    Я даже открывал курсоры на серверной стороне.
    Все это фигня на постном масле.
 
Конференция "Начинающим" » Базы данных в делфи [D7]
Есть новые Нет новых   [118744   +53][b:0][p:0.001]