![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Всем бодрое время суток, есть пара вопросов по написанию интерфейса к БД (использую InterBase 6.5) и Делфи 7 соответственно.
Итак, у меня есть созданная БД с 2-я таблицами диалект 3. Доступ при помощи dbExpress. Поля первой таблицы: ID Фамилия Имя Отчество Дата рождения Второй таблицы: ID2 Город В Делфи вместе с формами создан Data Module имя = dmBase, на котором размещаются компоненты SQLConnection и SQLDataSet На форме стоит 2 компонента DataSource Для Table1 имя dsTable1, параметр DataSet = dmBase.sdsTable1 (sdsTable1 - SQLDataSet для Table1) Для Table2 имя dsTable2, параметр DataSet = dmBase.sdsTable2 (sdsTable2 - SQLDataSet для Table2) Ставлю компоненту SQLDataSet для работы с 1-ой таблицей параметры: CommandType = ctQuery CommandText = select * from Table1 SQLConnection = sqlcBase (TSQLConnection) В результате после нажатия кнопки Add all Fields вылезает ошибка: Data type unknown Client SQL dialect 1 does not support reference to DATE datatype Со второй таблицей ДатаСет работает, поля вставляются, но возникает другая проблема: После размещения на форме DBGrid пытаюсь выбрать в его параметре DataSource = dsTable1 или dsTable2 - без разницы что ставить, выдает ошибку - Operation not allowed on a unidirectional dataset. Вопрос: как можно это поправить? Понятно, что dbExpress это однонаправленный доступ к базе, но ведь при помощи SQLDataSet можно осуществлять двунаправленый доступ. Где я тут ошибаюсь, подскажите пожалуйста! |