ASMo
Зарегистрирован: 19.01.2007 Сообщения: 1 Откуда: Брянск
|
Добавлено: Пт Янв 19 2007 11:05 Заголовок сообщения: C++ Builder - создание таблиц в БД Access |
|
|
Помогите, пожалуйста, разобраться в следующем вопросе:
В программе необходимо динамически создавать таблицы БД Access, содержащие поля со значениями real.
Пробовал это делать 2-мя путями, используя BDE.
1.
Table1->Active = false;
Table1->DatabaseName = "DBName";
Table1->TableType = ttDefault;
Table1->TableName = Edit1->Text;
Table1->FieldDefs->Clear();
TFieldDef *pNewDef = Table1->FieldDefs->AddFieldDef();
pNewDef->Name = "Field";
pNewDef->DataType = ftFloat;
Table1->CreateTable();
Таблица создается и ее появление в БД можно обнаружить функцией GetTableNames(), но
при попытке записи значений в это поле оно округляется до ближайшего целого.
Возможно ли таким путем добиться записи в поле значений с десятичным знаками?
2. Попытался создать таблицу через SQL запрос:
Query1->SQL->Clear();
Query1->SQL->Add("create table "+TableName+"(ID_int counter primary key, Field real)");
Query1->ExecSQL();
Таблица создается, но функция GetTableNames() ее не обнаруживает. При этом таблицу можно вывести на форму и в поле вводятся значения с десятичными знаками.
Но при выходе из этой таблицы и повторном ее вызове в этом поле значения отображаются с 14 десятичными знаками после запятой. (Например, вводил 2.1, выводится 2,09999990463257)
Как добиться появления имени таблицы в списке имен и отображения данных в поле с нужной точностью? |
|