powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Помогите новичку с выбором
15 сообщений из 15, страница 1 из 1
Помогите новичку с выбором
    #34706214
Safr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здрастуйте!:)
меня тут попросили для одной начинающей конторы написать програмку для учета их людей. попросили хорошие знакомые, и по этому бесплатно:) типа и сам я не мега кодер и у них фирма не Юкос:)
в общем ситуация такова: сам я пишу (пытаюсь:)) на дельфи. пробовал запускать Mssql 2000, писать хранимки и т.д. Еще читал книгу про FireBird, и совершал с ним все вышеописанные действия;) как вы видите опыт очень не велик:)
требования к БД: пока 1 оператор, с возможностью увелчения до 5-6. без веба.
уважаемые знатоки, подскажите, что мне сейчас лучше изучать? точнее так: какую БД надо изучать (всмысле детально, а не так как я изучал предыдущие: поверхностно)
и еще: желательно что бы бд была бесплатна.... но я почитал: и Mssql server и oracl и firebird все бесплатно. ну первые 2 с ограничениями, но мне до них пока далеко....
оффтоп:про ограничения MSSQL пишут '1 прочессор' это что обозначает? а если в системе 2 прочессора, то сервер работать не будет? или забьет на 2й процессор? а если камень двухядерный то что?
заранее благодарю:)
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706239
Фотография Иван Салазкин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MSDE
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706319
Safr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а MSDE это вообще что? кастрированный MSSQLServer??? или как понимать? если впроследствии переходить на Server то что изменится? добавятся новые фичи? или вообще все заново?
заранее спасибо:)
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706330
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Safrуважаемые знатоки, подскажите, что мне сейчас лучше изучать? точнее так: какую БД надо изучать (всмысле детально, а не так как я изучал предыдущие: поверхностно)
Если с точки зрения "что изучать, чтобы лучше написать программу", то идти следует не от СУБД. Идите в какой-нибудь большой книжный, поройтесь в книгах по дельфе и берите ту, в которой лучше - с Вашей точки зрения описана работа с БД. Ну и используйте СУБД, описанную там, соответственно - если она отвечает граничным условиям.

Если с точки зрения "что изучать, чтобы потом пригодилось", то берите Oracle.
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706336
Safr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а вот насколько быстро в Оракле можно накрапать мини табличку и пару хранимок? в МССКУЛСервере у меня получилось за день. это с нуля. а по описаниям(отзывам) оракл сложнее. насколько хороши в дельфи средства связи с ораклом? АДО? или еще что нибудь есть?
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706340
Safr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и еще пару вопросов:
- какая БД сейчас самая востребованная?
- какие ограничения бесплатной версии Oracle?
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706347
Фотография dmidek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Safr- какие ограничения бесплатной версии Oracle?

Oracle Database 10g Express Edition

автор
Oracle Database XE can be installed on any size host machine with any number of CPUs (one database per machine), but XE will store up to 4GB of user data, use up to 1GB of memory, and use one CPU on the host machine.
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706379
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Safrа вот насколько быстро в Оракле можно накрапать мини табличку и пару хранимок? в МССКУЛСервере у меня получилось за день. это с нуля.
Как Вам сказать... боюсь, десять лет назад мне проще было бы ответить на этот вопрос :) Ответил бы "за две минуты", но, думаю, Вы спрашивали немного не об этом :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
SQL> create table mini ( id integer not null primary key, value varchar2( 100 ), 
  2      locked char( 1 ) default 'N' check ( locked in ( 'Y', 'N' ))) ;

Table created

SQL> create sequence mini_seq ;

Sequence created

SQL> create function insert_mini ( p_value varchar2 ) return integer is
   2     result integer ;
   3   begin
   4     insert into mini ( id, value, locked )
   5       values ( mini_seq.nextval, p_value, default ) 
   6       returning id into result ;
   7     return result ;
   8   end ;
   9   /

Function created

SQL> create procedure update_mini ( p_id integer, p_newvalue varchar2, p_newlocked char ) is
   2   begin
   3     update mini set
   4       value = p_newvalue,
   5       locked = p_newlocked
   6     where id = p_id ;
   7   end ;
   8   /

Procedure created

SQL> create procedure delete_mini ( p_id integer ) is
   2   begin
   3     delete from mini where id = p_id ;
   4     if sql%rowcount <>  1  then raise_application_error ( - 20100 , 'Something wrong with delete' ) ; end if ;
   5   end ;
   6   /

Procedure created

SQL> create trigger mini_bd before delete on mini for each row
   2   begin
   3     if :old.locked = 'Y' then 
   4       raise_application_error ( - 20101 , 'Record ' || :old.id || ' is locked and cannot be deleted' ) ;
   5     end if ;
   6   end ;
   7   /

Trigger created

SQL> var new_id number ;

SQL> begin :new_id := insert_mini ( 'Первая запись' ) ; end ;
   2   /

PL/SQL procedure successfully completed

new_id
---------
 1 

SQL> begin :new_id := insert_mini ( 'Вторая запись' ) ; end ;
   2   /

PL/SQL procedure successfully completed

new_id
---------
 2 

SQL> begin :new_id := insert_mini ( 'Третья запись' ) ; end ;
   2   /

PL/SQL procedure successfully completed

new_id
---------
 3 

SQL> begin update_mini ( p_id =>  2 , p_newvalue => 'Обновленная вторая запись', p_newlocked => 'Y' ) ; end ;
   2   /

PL/SQL procedure successfully completed

SQL> begin delete_mini (  1  ) ; end ;
   2   /

PL/SQL procedure successfully completed

SQL> select * from mini ;

                                     ID VALUE                                                                            LOCKED
--------------------------------------- -------------------------------------------------------------------------------- ------
                                       2  Обновленная вторая запись                                                        Y
                                       3  Третья запись                                                                    N

SQL> begin delete_mini (  2  ) ; end ;
   2   /

ORA- 20101 : Record  2  is locked and cannot be deleted
ORA- 06512 : at "TEST.MINI_BD", line  3 
ORA- 04088 : error during execution of trigger 'TEST.MINI_BD'
ORA- 06512 : at "TEST.DELETE_MINI", line  3 
ORA- 06512 : at line  1 

SQL> begin delete_mini (  10  ) ; end ;
   2   /

ORA- 20100 : Something wrong with delete
ORA- 06512 : at "TEST.DELETE_MINI", line  4 
ORA- 06512 : at line  1 

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

Safr насколько хороши в дельфи средства связи с ораклом? АДО? или еще что нибудь есть?
АДО, может быть и годится для связи с MSSQL, не готов судить во всей полноте, но Oracle им лучше не насиловать. Средства в дельфе... ну как сказать, если я скажу "идеально", это будет небольшим преувеличением. Поиск по форуму дельфы даст Вам груду информации на этот счет.
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706383
Safr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вот... хотел углубляться в ФиреБирд.... :) мона сказать вы меня убедили:)
тогда так: какие книжки по Вашему мнению стоит читать? точнее так: что из присутствующего на рынке стоит читать? рассматриваются варианты на русском. на инглише, как я понимаю хелп от оракла:)
и есче: меня напрягает условие 1 CPU.
на 2х он работать не будет? я не просто так спрашиваю: у меня десктоп двухядерный камень.
и как насчет средств администрирования? в МССКУЕЛе они сразу были. а здесь как? придется искать? они платные?
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706392
ktulhu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer Safrа вот насколько быстро в Оракле можно накрапать мини табличку и пару хранимок? в МССКУЛСервере у меня получилось за день. это с нуля.
Как Вам сказать... боюсь, десять лет назад мне проще было бы ответить на этот вопрос :) Ответил бы "за две минуты", но, думаю, Вы спрашивали немного не об этом :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
SQL> create table mini ( id integer not null primary key, value varchar2( 100 ), 
  2      locked char( 1 ) default 'N' check ( locked in ( 'Y', 'N' ))) ;

Table created

SQL> create sequence mini_seq ;

Sequence created

SQL> create function insert_mini ( p_value varchar2 ) return integer is
   2     result integer ;
   3   begin
   4     insert into mini ( id, value, locked )
   5       values ( mini_seq.nextval, p_value, default ) 
   6       returning id into result ;
   7     return result ;
   8   end ;
   9   /

Function created

SQL> create procedure update_mini ( p_id integer, p_newvalue varchar2, p_newlocked char ) is
   2   begin
   3     update mini set
   4       value = p_newvalue,
   5       locked = p_newlocked
   6     where id = p_id ;
   7   end ;
   8   /

Procedure created

SQL> create procedure delete_mini ( p_id integer ) is
   2   begin
   3     delete from mini where id = p_id ;
   4     if sql%rowcount <>  1  then raise_application_error ( - 20100 , 'Something wrong with delete' ) ; end if ;
   5   end ;
   6   /

Procedure created

SQL> create trigger mini_bd before delete on mini for each row
   2   begin
   3     if :old.locked = 'Y' then 
   4       raise_application_error ( - 20101 , 'Record ' || :old.id || ' is locked and cannot be deleted' ) ;
   5     end if ;
   6   end ;
   7   /

Trigger created

SQL> var new_id number ;

SQL> begin :new_id := insert_mini ( 'Первая запись' ) ; end ;
   2   /

PL/SQL procedure successfully completed

new_id
---------
 1 

SQL> begin :new_id := insert_mini ( 'Вторая запись' ) ; end ;
   2   /

PL/SQL procedure successfully completed

new_id
---------
 2 

SQL> begin :new_id := insert_mini ( 'Третья запись' ) ; end ;
   2   /

PL/SQL procedure successfully completed

new_id
---------
 3 

SQL> begin update_mini ( p_id =>  2 , p_newvalue => 'Обновленная вторая запись', p_newlocked => 'Y' ) ; end ;
   2   /

PL/SQL procedure successfully completed

SQL> begin delete_mini (  1  ) ; end ;
   2   /

PL/SQL procedure successfully completed

SQL> select * from mini ;

                                     ID VALUE                                                                            LOCKED
--------------------------------------- -------------------------------------------------------------------------------- ------
                                       2  Обновленная вторая запись                                                        Y
                                       3  Третья запись                                                                    N

SQL> begin delete_mini (  2  ) ; end ;
   2   /

ORA- 20101 : Record  2  is locked and cannot be deleted
ORA- 06512 : at "TEST.MINI_BD", line  3 
ORA- 04088 : error during execution of trigger 'TEST.MINI_BD'
ORA- 06512 : at "TEST.DELETE_MINI", line  3 
ORA- 06512 : at line  1 

SQL> begin delete_mini (  10  ) ; end ;
   2   /

ORA- 20100 : Something wrong with delete
ORA- 06512 : at "TEST.DELETE_MINI", line  4 
ORA- 06512 : at line  1 



хоть вы и уважаемый человек но так писать нунафиг.....
А если у него в приложении будет не 1-10 а 5000 таблиц.. ему придется наплодить в 3 раза больше процедур!!!
ИМХО не стоит так советовать человеку делать.
Надо в первую очередь глубоко вникнуть и понять методологию написания клиентских приложений.
а так - если на коленке лабать то да....
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706400
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Safrну вот... хотел углубляться в ФиреБирд.... :) мона сказать вы меня убедили:)
С точки зрения последующей профессиональной карьеры Firebird все же уступает.

Safrтогда так: какие книжки по Вашему мнению стоит читать? точнее так: что из присутствующего на рынке стоит читать?
Скажу так: опять-таки, трудно советовать литературу для начинающих, потому как сам уже много лет не интересовался этой темой. Некоторое время назад я озадачился этим вопросом, и из того, что видел в продаже, мне глянулась следующая комбинация книг:

http://www.ozon.ru/context/detail/id/3279749/
http://www.ozon.ru/context/detail/id/2206151/

Safrрассматриваются варианты на русском. на инглише, как я понимаю хелп от оракла:)
Хелп - вещь, в которую часто нужно лазить, но литературы он не заменяет. Это очень большой справочник; прочитать его "последовательно от начала до конца" нереально.

Safrи есче: меня напрягает условие 1 CPU. на 2х он работать не будет? я не просто так спрашиваю: у меня десктоп двухядерный камень.
dmidek ответил на этот вопрос.

Safrи как насчет средств администрирования? в МССКУЕЛе они сразу были. а здесь как? придется искать? они платные?
Смотря что Вы называете средствами администрирования. Под Oracle довольно большой выбор инструментов разного назначения, как самого оракла, так и третьих фирм. Есть платные, но и бесплатно можно собрать себе абсолютно адекватный комплект. Впрочем, на первое время средством администрирования я бы посоветовал сделать три простейших батника - "стартовать базу", "остановить базу" и "забэкапить базу", вывести их ярлыки на рабочий стол и наслаждаться.
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706403
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KtulhuИМХО не стоит так советовать человеку делать.
Я не "советую делать", скорее показываю, что "простые вещи делаются просто". Думаю, примерно такие процедуры и имелись в виду в вопросе.

В целом я с Вами согласен, но организовывать в топике мини-курсы правильной работы, признаться, не готов, тем паче что рядом есть большой форум специально для этой цели.

А количество процедур определяется не столько количеством таблиц, сколько количеством необходимых бизнес-функций. Бывает и тридцать хранимок на одну таблицу.
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706412
Safr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так вот из ответа уважаемого dmidekа я и не понял ответа:( оракл просто не запустится? и чего тогда мне с моим 2х ядерным делать????

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

будем развиваться! спасибо:)
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706417
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Safrтак вот из ответа уважаемого dmidekа я и не понял ответа:(
А он там есть. Считайте его поиск первым домашним заданием :) А вообще советую поверить - в оракле не дураки сидят.

Safrа можете тогда вы посоветовать курсы по подготовке?
Скорее нет. Я когда-то вел, смею надеяться, не самые плохие - но это было внутри компании для своих сотрудников. А такие, чтобы общедоступные и не "деньги на ветер" - может и есть, но никогда о таких не слышал.

Safr(это я к тому что не хочу постить новую тему в соответствующем форуме)
Для начала стоит почаще пользоваться кнопкой "поиск". Вопрос "как начать" весьма популярен и на этом форуме, и в гугле.
...
Рейтинг: 0 / 0
Помогите новичку с выбором
    #34706462
Safr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
гыгыг:) ответ нашел, как тока решился прочитать сначала:)

насчет последнего высказывания
"А такие, чтобы общедоступные и не "деньги на ветер" - может и есть, но никогда о таких не слышал."
можно лично, если конечно не затруднит, написать о тех, которые "деньги на ветер". буду очень благодарен:)
еси можно не лично, то это будет совсем хорошо, но мне кажется, что это не можно....:(
3760353948icq
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Помогите новичку с выбором
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]