Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Delphi 2010 & Firebird 2.1 
:(
    Опции темы
Keeper89
Дата 5.4.2010, 09:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Доброго времени суток.

Есть ли у кого материалы по сабжу? smile

1) В чем лучше (визуальное средство) проектировать, изменять БД Firebird?
2) Как работать с Firebird'ом в Delphi через dbExpress (может есть примеры)?

Заранее спасибо.


--------------------
PM MAIL WWW   Вверх
Deniz
Дата 5.4.2010, 10:58 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 8
Всего: 44



Материалы ibase.ru
Цитата(Keeper89 @  5.4.2010,  11:17 Найти цитируемый пост)
1) В чем лучше (визуальное средство) проектировать, изменять БД Firebird?
см. первый пост
Цитата(Keeper89 @  5.4.2010,  11:17 Найти цитируемый пост)
2) Как работать с Firebird'ом в Delphi через dbExpress (может есть примеры)?
Delphi 2010 еще не видел, обычно еще есть IBX, но из компонент лучше FIBPlus


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
Alexeis
Дата 5.4.2010, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



Цитата(Deniz @  5.4.2010,  09:58 Найти цитируемый пост)
Delphi 2010 еще не видел, обычно еще есть IBX

  Использую их. БД в формате UTF8 постоянно имею проблемы с преобразованием типов строк. Все они безусловно решаются положительно, но писать такой код неудобно, чуть забыл написать преобразование и выползли кракозяблы. Смотрел код FIBPlus. Они заметно лучше, но стоят денег. Так что это вопрос нужно оно вам настолько что вы готовы за это платить.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
ReptileDB
Дата 6.4.2010, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 24.11.2007

Репутация: нет
Всего: нет



Сейчас пишу софт с использованием Delphi 2010 & Firebird 2.1, но из  dbExpress использую только SQLConnection, а вот от остальных компонент отказался по причине того, что тупо не отлавливает Exceptions которые я специально генерирую в хранимых процедурах.
PM MAIL   Вверх
Akella
Дата 6.4.2010, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Keeper89 @  5.4.2010,  09:17 Найти цитируемый пост)
2) Как работать с Firebird'ом в Delphi через dbExpress (может есть примеры)?

А в стандартной поставке примеров нет?

Добавлено через 1 минуту и 25 секунд
Цитата(Alexeis @  5.4.2010,  12:53 Найти цитируемый пост)
 Использую их. БД в формате UTF8 постоянно имею проблемы с преобразованием типов строк. Все они безусловно решаются положительно, но писать такой код неудобно, чуть забыл написать преобразование и выползли кракозяблы.

А в параметрах соединение ставишь UTF-8 и всё равно кракозябры?
PM MAIL   Вверх
Alexeis
Дата 6.4.2010, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



Цитата(Akella @  6.4.2010,  15:25 Найти цитируемый пост)
А в параметрах соединение ставишь UTF-8 и всё равно кракозябры? 

  А с чего вдруг у меня должны быть не кракозяблы если результат всегда приходит в UTF8, а компоненты не позволяют получать результат AsUTF8String ? Результат приходит совершенно правильный. Есть 2 варианта AsWideString и AsAnsiString. И то и другое не соответствует нативному типу. Сам движок не знает что тип строки это UTF8 обернутый в AnsiString.
  Скажем так, в байтовом представлении приходит верный результат, если бы он сам знал что в варианте у него фактически UTF8, то все строковые преобразования работали по присваиванию. Но исходники IBX таковы что установка режима UTF8 ничего внутри него не меняет кроме состояния поля объекта. Т.е. можно прочитать поле объекта и узнать что тип соединения UTF8, но сам IBX проинтерпретирует полученную строку как AnsiString. 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Keeper89
Дата 9.4.2010, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(Deniz @  5.4.2010,  10:58 Найти цитируемый пост)
Delphi 2010 еще не видел, обычно еще есть IBX, но из компонент лучше FIBPlus 

А что если работать через
SQLConnection -> SQLDataSet/SQLQuery -> DataSetProvider -> ClientDataSet -> DataSource
?

Это сообщение отредактировал(а) Keeper89 - 9.4.2010, 15:45


--------------------
PM MAIL WWW   Вверх
Akella
Дата 9.4.2010, 20:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Keeper89, давай ещё цепочку продолжим тремя-четырьмя компонентами, а? А то что-то короткая цепочка smile 
PM MAIL   Вверх
Keeper89
Дата 10.4.2010, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Akella, дальше некуда )


--------------------
PM MAIL WWW   Вверх
Keeper89
Дата 11.4.2010, 00:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Расположил на форме все вышеуказанное + пару DBEdit'ов и DBNavigator.

После добавления записи с помощью последнего, на форме запись имеется, но в самой базе ее нет.
Что я делаю не так? smile


--------------------
PM MAIL WWW   Вверх
Данкинг
Дата 11.4.2010, 00:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Я с DBNavigator не работал, поэтому за него не скажу, но замечу, что при добавлении записей надо не забывать подтверждать транзакцию:
Код

IBTransaction1.CommitRetaining();






--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Keeper89
Дата 11.4.2010, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Не ну понятное дело, что нужно делать
Код

ClientDataSet1.ApplyUpdates

но вот в какой момент... smile


--------------------
PM MAIL WWW   Вверх
VahaC
Дата 12.4.2010, 00:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 4.9.2007

Репутация: нет
Всего: нет



Keeper89
Цитата(Данкинг @  11.4.2010,  00:53 Найти цитируемый пост)
что при добавлении записей надо не забывать подтверждать транзакцию:
Код

IBTransaction1.CommitRetaining();



и

Код

ClientDataSet1.ApplyUpdates


немного разные вещи

PM MAIL   Вверх
Keeper89
Дата 12.4.2010, 02:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



VahaC
А что нужно?

И почему навигатор не может сделать это сам?


--------------------
PM MAIL WWW   Вверх
VahaC
Дата 12.4.2010, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 4.9.2007

Репутация: нет
Всего: нет



Для сохранения изменений в таблице бд нужно сделать ClientDataSet1.ApplyUpdates или ClientDataSet1.Post
и потом закрыть транзакцию (IBTransaction1.CommitRetaining();) в контексте которой вносились изменения.
Как это сделать с помощью ДБНавигатора к сожалению не знаю, так как в своих проектах его не использую

PM MAIL   Вверх
former
Дата 12.4.2010, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Цитата(VahaC @  12.4.2010,  08:45 Найти цитируемый пост)
Как это сделать с помощью ДБНавигатора к сожалению не знаю, так как в своих проектах его не использую

DBNavigator тут не причем. Подтверждать транзакцию нужно в ClientDataSet, в триггере AfterPost. Ну и, соответственно, выполнять откат при ошибке (OnPostError  и т.п.).


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
VahaC
Дата 12.4.2010, 11:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 4.9.2007

Репутация: нет
Всего: нет



Цитата(former @  12.4.2010,  10:27 Найти цитируемый пост)
Подтверждать транзакцию нужно в ClientDataSet, в триггере AfterPost. Ну и, соответственно, выполнять откат при ошибке (OnPostError  и т.п.).

полностью согласен
PM MAIL   Вверх
Keeper89
Дата 12.4.2010, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(former @  12.4.2010,  10:27 Найти цитируемый пост)
DBNavigator тут не причем. Подтверждать транзакцию нужно в ClientDataSet, в триггере AfterPost. Ну и, соответственно, выполнять откат при ошибке (OnPostError  и т.п.). 

ок, а как это должно выглядеть в коде?

Это сообщение отредактировал(а) Keeper89 - 12.4.2010, 12:45


--------------------
PM MAIL WWW   Вверх
former
Дата 12.4.2010, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Код

procedure TForm1.ClientDataSet1AfterPost(DataSet: TDataSet);
begin
  IBTransaction1.CommitRetaining();
end;

procedure TForm1.ClientDataSet1PostError(DataSet: TDataSet; E: EDatabaseError;
  var Action: TDataAction);
begin
  IBTransaction1.Rollback();
end;



--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Keeper89
Дата 12.4.2010, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



А что есть IBTransaction1? smile 


+ другой маленький вопрос (не буду делать отдельную тему). Имеется триггер (и соотв. генератор) на BeforeInsert для ID-поля. При вставке новой записи в IBExpert'е автоматически добавляется новый ID как и положено, однако при попытке добавления записи в Delphi такого не происходит. В чем может быть дело?


--------------------
PM MAIL WWW   Вверх
former
Дата 12.4.2010, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Цитата(Keeper89 @  12.4.2010,  12:46 Найти цитируемый пост)
А что есть IBTransaction1?

Так ты используешь  dbExpress. А я так понял, что после сообщения Данкинг-а IBX. smile 
Вот статья.

Цитата(Keeper89 @  12.4.2010,  12:46 Найти цитируемый пост)
В чем может быть дело? 

Тело триггера в студию.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Данкинг
Дата 12.4.2010, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Цитата(former @  12.4.2010,  14:15 Найти цитируемый пост)
Так ты используешь  dbExpress. А я так понял, что после сообщения Данкинг-а IBX. 

А, ну да, я про IBX, разумеется. Там без IBTransaction работать и не будет.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Keeper89
Дата 12.4.2010, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(former @  12.4.2010,  13:15 Найти цитируемый пост)
Вот статья.

Очень она пессимистичная smile

В моем случае никак? smile

Цитата(former @  12.4.2010,  13:15 Найти цитируемый пост)
Тело триггера в студию. 

Код

AS
BEGIN
  IF (NEW.PRODUCTID IS NULL) THEN
    NEW.PRODUCTID = GEN_ID(GEN_PRODUCT_ID,1);
END



--------------------
PM MAIL WWW   Вверх
Akella
Дата 12.4.2010, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Keeper89 @  12.4.2010,  12:46 Найти цитируемый пост)
А что есть IBTransaction1?

Это транзакция. Транзакции в базах данных ухх как важны!
Транзакция - это совокупность действий...
PM MAIL   Вверх
Keeper89
Дата 12.4.2010, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(Akella @  12.4.2010,  15:32 Найти цитируемый пост)
Это транзакция. Транзакции в базах данных ухх как важны!
Транзакция - это совокупность действий... 

Спасибо за напоминание smile


--------------------
PM MAIL WWW   Вверх
Akella
Дата 12.4.2010, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Keeper89 @  12.4.2010,  12:46 Найти цитируемый пост)
однако при попытке добавления записи в Delphi такого не происходит. В чем может быть дело? 

А что ты передаёшь серверу, NULL?
Цитата(Keeper89 @  12.4.2010,  15:29 Найти цитируемый пост)
 IF (NEW.PRODUCTID IS NULL)

Согласно условий ты должен передать NULL в запросе для этого поля. А лучше вообще не передавать это поле:
Код
insert into table1 (name, BirthDay) values ('Вася Пупкин', '2001-01-12')


Добавлено @ 15:56
Или если НЕ передаёшь NULL, то должен передать конкретное значение:
Код
insert into table1 (id, name, BirthDay) values (10, 'Вася Пупкин', '2001-01-12')


Это сообщение отредактировал(а) Akella - 12.4.2010, 15:57
PM MAIL   Вверх
Keeper89
Дата 12.4.2010, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(Akella @  12.4.2010,  15:55 Найти цитируемый пост)
А что ты передаёшь серверу, NULL?

Ничего не передаю.

У меня есть ClientDataSet, для добавления я делаю ClientDataSet.Insert, заполняю только нужные поля (через DBEdit'ы), и дальше ClientDataSet.Post.


--------------------
PM MAIL WWW   Вверх
Akella
Дата 13.4.2010, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Keeper89 @  12.4.2010,  12:46 Найти цитируемый пост)
При вставке новой записи в IBExpert'е автоматически добавляется новый ID как и положено, однако при попытке добавления записи в Delphi такого не происходит. В чем может быть дело? 

Хорошо. А что значит "ничего не происходит"? Что ты под этим подразумеваешь? Что ты ожидаешь? Что должно произойти?
PM MAIL   Вверх
Keeper89
Дата 13.4.2010, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(Akella @  13.4.2010,  10:41 Найти цитируемый пост)
Хорошо. А что значит "ничего не происходит"? Что ты под этим подразумеваешь? Что ты ожидаешь? Что должно произойти? 

Я подразумеваю, что при Post'е незаполненные поля (которые по идее передаются как NULL) заполнятся автоматически на основании триггеров. А выдается ошибка, что поле должно быть заполнено.


--------------------
PM MAIL WWW   Вверх
Akella
Дата 14.4.2010, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Наверное, это связано с внутренней реализацией компонент. Поэтому два выхода.
1. В клиентской части приложения берём значение генератора и передаём в запросе, как и все остальные поля.
2. Поле ID вообще не должно участвовать в запросе. Зачем ты его туда пхаешь?
PM MAIL   Вверх
former
Дата 14.4.2010, 09:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Keeper89, выложи пример того, что ты делаешь. Тяжело гадать на кофейной гуще.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Keeper89
Дата 15.4.2010, 02:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(Akella @  14.4.2010,  09:05 Найти цитируемый пост)
Поле ID вообще не должно участвовать в запросе. Зачем ты его туда пхаешь? 

Я его не трогаю, просто при Insert'е он добавляет все поля, и это тоже.


--------------------
PM MAIL WWW   Вверх
Akella
Дата 15.4.2010, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



1. Кто "он"? И куда добавляет? В SQL запрос?

2. вот же пример
Код
insert into table1 (name, BirthDay) values ('Вася Пупкин', '2001-01-12')

вставь его в кверю и выполни... как видишь, здесь нет поля ID

PM MAIL   Вверх
Keeper89
Дата 15.4.2010, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(Akella @  15.4.2010,  12:41 Найти цитируемый пост)
1. Кто "он"? И куда добавляет? В SQL запрос?

ClientDataSet через Insert и Post.
Цитата(Akella @  15.4.2010,  12:41 Найти цитируемый пост)
вставь его в кверю и выполни... как видишь, здесь нет поля ID

попробую


--------------------
PM MAIL WWW   Вверх
Akella
Дата 15.4.2010, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Keeper89 @  15.4.2010,  13:23 Найти цитируемый пост)
ClientDataSet через Insert и Post.

А откуда ты знаешь, какие значение передаёт серверу ClientDataSet? И зачем он ваще нужен это ClientDataSet?
PM MAIL   Вверх
Keeper89
Дата 15.4.2010, 21:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(Akella @  15.4.2010,  16:12 Найти цитируемый пост)
А откуда ты знаешь, какие значение передаёт серверу ClientDataSet? И зачем он ваще нужен это ClientDataSet? 

Ну, он нужен для работы согласно этому видео.


--------------------
PM MAIL WWW   Вверх
Akella
Дата 15.4.2010, 21:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



не знаю... я бы на твоём месте не использовал dbExpress, есть другие замечательные компоненты
PM MAIL   Вверх
Keeper89
Дата 15.4.2010, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Цитата(Akella @  15.4.2010,  21:39 Найти цитируемый пост)
не знаю... я бы на твоём месте не использовал dbExpress, есть другие замечательные компоненты 

IBX? И чем так плох dbExpress?


--------------------
PM MAIL WWW   Вверх
Akella
Дата 16.4.2010, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Keeper89 @  15.4.2010,  22:09 Найти цитируемый пост)
IBX?

Ну хотябы... хотя есть другие: anyDAC, FreeDAC, FibPlus, ZEOS, InterBase Objects (IBO), UnifiedIB (UIB), IBDac, FBLib, 

вот ещё
http://www.ibase.ru/components.htm


Цитата(Keeper89 @  15.4.2010,  22:09 Найти цитируемый пост)
И чем так плох dbExpress?

1. Я не говорю, что плох.
2. Я не понимаю, зачем такую большую цепочку использовать? Ведь это сказывается на производительности, отладке и простоте разработки.
3. "Родные" компоненты прямого доступа всё же лучше,  чем какое-то универсальное решение.

Добавлено через 1 минуту и 12 секунд
Лучше 1 раз купить фибы и потом горя не знать, ПМСМ.
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.1653 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.