Как выбрать СУБД ?

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

Сообщение 2sun » 26.06.2007 15:24:49

Есть проект с использованием Firebird, но поковырявшись с PostgreSQL понял что это и есть ОНО! Тобишь правильное решение.
А если брать проприетарную базу данных гляньте в сторону DB2 express. Кстати это бесплатный вариант с ограничениями, на которые врядли прийдется обращать внимание.
Согласно многим отчетам, пока Microsoft и Oracle ругаются кто производительнее DB2 рвет показатели. Кстати и все нововведения после обкатки на PostgreSQL первыми появляются в DB2.
2sun
новенький
 
Сообщения: 13
Зарегистрирован: 17.10.2005 17:07:44

Re: Как выбрать СУБД ?

Сообщение bara-igor » 06.08.2007 08:34:16

rudjuk1977 писал(а):MySQL (бесплатный вариант)
На сегодняшний момент MySQL не бесплатен для Windows(это зписано в его лицензии) плюс MySQL всегда был платен для коммерческого использования.
bara-igor
новенький
 
Сообщения: 63
Зарегистрирован: 04.03.2006 10:09:54

Сообщение GN » 06.08.2007 10:58:02

Раньше когда изучал Делфи, всё время старался обходить стороной БД. Сейчас вот пересел на Lazarus и думаю надо всё-таки браться за БД. Прочитал эту тему и понял что мне для начала пойдёт SQlite3. Порылся в нете, но учебника\справочника по SQlite3 не нашёл :( Может у кого-то есть хоть какая-то инфа по SQlite3 для начинающих.
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан

Сообщение debi12345 » 06.08.2007 11:50:41

раздел документации на "www.sqlite.org".
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение GN » 06.08.2007 13:22:01

Документация к сожалению там на буржуйском :(
Скачал вот такие файлы:
sqlite-3_4_1.zip
sqlitedll-3_4_1.zip
sqlite3_analyzer-3_3_13.zip

И что дальше делать? Может у кого есть пример по работе с этой БД?
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан

Сообщение shade » 06.08.2007 14:10:40

Проще начать с изучения компонентов со вкладок Data Access и Data Controls

А так
sqlite-3_4_1.zip - консольная утилита для работы с БД sqlite
sqlitedll-3_4_1.zip - библиотека которая предоставляет функции для работы с БД
и нужно начать учить SQL и SQLite API
Вобщем этот путь дольше и сложне...
Аватара пользователя
shade
энтузиаст
 
Сообщения: 879
Зарегистрирован: 21.02.2006 20:15:48
Откуда: http://shamangrad.net/

Сообщение debi12345 » 06.08.2007 15:14:27

Сейчас вот пересел на Lazarus и думаю надо всё-таки браться за БД.

Обычно все наоборот - "писал БД-проекты, но перешел на лазарус, и вынужден был отказаться от БД". Насколько в курсе, только жар-птица более-менее до ума доведена, да и то в стороннем компоненте от "alexs".
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение GN » 08.08.2007 09:36:48

Вот нашёл - http://lazarus-ccr.sourceforge.net/inde ... and_SQLite "Lazarus and SQLite" (на англ.) хоть убейте, не пойму как всё установить и начать работать с БД. Пожалуйста, объясните на пальцах начинаещему.

p.s. У меня ХР. Лазарь 0.9.22
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан

Сообщение debi12345 » 08.08.2007 12:37:44

Описанный там способ - нежизнеспособен. Никто так не делает. Структура БД создается внешним скпритом, вызывающим SQLITE3:

----------------------
Командный файл:


#!/bin/sh

sqlite3 ../2007/refs.db <refs.sql
sqlite3 ../2007/data_ss.db <data_ss.sql
sqlite3 ../2007/data_retail.db <data_retail.sql

exit 0
-----------------------

SQL-скрипт 1:

pragma auto_vacuum = 1;


create table ref_offices (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name VARCHAR(25),
ring INTEGER,
ring_order INTEGER
);


create table ref_pasports (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT,
main_index INTEGER,
aux_index INTEGER
);

------------------
....

Дальше - сочувствую Вам. В Лазарусе поддержка БД - пока на рудиментарном уровне.
Если нужно чтобы "играючи" - придется переключится на MSEgui, за ( заточенный под БД ) - но там вообще нет доки, кроме примеров и рабочих проектов.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение Padre_Mortius » 08.08.2007 12:51:45

Для создания SQL -запроса на создание структуры можно воспользоваться SQliteAdministrator. В нескольких своих небольших проектах использовал SQlite3 через SQLiteDataset (под win32). Вариант меня вполне устроил.
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение GN » 08.08.2007 13:34:50

Ещё раз, сначала. Имею C:\sqlite файлы:
sqlite3.exe
sqlite3.dll
sqlite3.def

Как создать "Командный файл" в ХР?

Давно когда пользовался PHP я использовал MySQL. Вот например код

Код: Выделить всё
$server = "localhost";
$login = "root";
$password = "";

$db="baza_dannih";

mysql_pconnect($server,$login,$password);

$sql="CREATE DATABASE $db";
mysql_query($sql);

mysql_select_db($db);

$sql='CREATE TABLE users(published VARCHAR(12),name VARCHAR(20),email VARCHAR(40),url VARCHAR(30),soob TEXT,date VARCHAR(40))';
mysql_query($sql);


Этот код размещался в файле *.php
Установливал я мускул на Apache с помощью инсталятора, и не о каких "страшных" :) командых файлах не слышал.

Здесь:
идёт соединение с базой
создание БД
выбор БД
создание таблицы

А то что вы написали я не пойму :(
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан

Сообщение debi12345 » 08.08.2007 13:55:26

и не о каких "страшных" командых файлах не слышал.

Извините, конечно - но с такими "знаниями" далеко пойдете :)

Для Вынь32 - файл "do.cmd" или "do.bat":

sqlite3 refs.db <refs.sql
sqlite3 data_ss.db <data_ss.sql
sqlite3 data_retail.db <data_retail.sql

Все остальные ответы-вопросы - после основательного ликбеза.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение GN » 08.08.2007 14:26:30

Ну про батники я конечно знаю, просто меня смутила строка "#!/bin/sh".
С помощью хрустального шара догадался что надо создать файл refs.sql и поместил туда
create table ref_offices (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name VARCHAR(25),
ring INTEGER,
ring_order INTEGER
);
После запуска появился файл refs.db
А что надо писать в data_ss.sql и data_retail.sql?

И как потом из Lazarus добавлять\просматривать данные?

Может у кого-нибудь есть небольшая рабочая программа (исходник) с использованием sqlite3 ?
А то у меня хрустальный шар не на столько развит чтобы всё угадать :)
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан

Сообщение Attid » 08.08.2007 14:40:59

GN
SQliteAdministrator посмотрел ? чтоб тебя не пугали и шарик выкинь, купи бубен.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение GN » 08.08.2007 15:12:26

Attid писал(а):SQliteAdministrator посмотрел ?
Да если бы я знал что это за чудо, с удовольствием бы посмотрел.

Сейчас смог с помощью cmd.exe создать базу, создать таблицу. А как теперь с помощью Lazarus добавить в базу данные???
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан

Пред.След.

Вернуться в Базы данных

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Рейтинг@Mail.ru