Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Програмное создание Таблици [D5, dBase, FoxPro]


SZap ©   (2003-03-06 11:40:00) 

Создаю програмно таблицу (компонент TTable) функцией FieldDefs.Add(), никак немогу понять как мне написать, то что мне нужно:
P1 NUMERIC 7, 0
P2 NUMERIC 13, 3


SZap   (2003-03-06 18:33:00) [1]

>Соловьев
алиас - локальная дериктория
>Anatoly Podgoretsky
DECIMAL пробовал - результат неизменился
сделать таблицу в Database Desktop непроблема, но вопрос именно о програмном создании
настройки БДЕ - по умолчанию (после установки Delphi ничего нетрогал)
>MsGuns
что касается TDatabase - несовсем понимаю каким образом она влияет на создание новой таблици...
что именно и где по твоему я должен прописать чтобы все создавалось как надо (именно для фокса)???

Пока у меня ничего неполучилось :(


MsGuns   (2003-03-06 17:12:00) [2]

А траблы потому, что не используем TDatabase и алиасы. Если там все прописать как надо (в т.ч. и динамически в ране), то все создастся как надо (правда, фокс не пробовал)


Anatoly Podgoretsky   (2003-03-06 16:59:00) [3]

DECIMAL пробовал? Для чего же Соловьев привел таблицу, но может не получиться из за настроек БДЕ и ее ограниченности. А почему не хочешь сделать таблицу в Database Desktop?


Соловьев   (2003-03-06 16:54:00) [4]

у алиаса какие настройки?


SZap   (2003-03-06 16:50:00) [5]

>Соловьев
Попробовал...
Результат тотже,
пишу: CREATE TABLE "1.dbf" (P1 NUMERIC(17,3))
получаю опьять: P1 NUMERIC 20,4
И еще, на выходе мне нужна таблица FoxPro, а LocalSQL делает dBase или Paradox...
Что мне делать???


Соловьев   (2003-03-06 13:25:00) [6]

поробуй криетить SQL запросом.


SZap   (2003-03-06 13:24:00) [7]

>Соловьев
Немного непонял ответа...
я пишу:
FieldDefs.Add("P1", ftBCD, 3, False);
FieldDefs.Add("P2", ftSmallint, 0, False);
FieldDefs.Add("P3", ftInteger, 0, False);
FieldDefs.Add("P4", ftFloat, 0, False);
FieldDefs.Add("P5", ftCurrency, 0, False);
получаю:
P1 NUMERIC 20, 4
P2 NUMERIC 6, 0
P3 NUMERIC 11, 0
P4 NUMERIC 20, 4
P5 NUMERIC 20, 4
а надо:
P1 NUMERIC 7, 0
P2 NUMERIC 13, 3


Соловьев   (2003-03-06 11:51:00) [8]

SQL Syntax BDE Logical Paradox dBASE
SMALLINT fldINT16 Short Numeric(6,0)
INTEGER fldINT32 Long Long
DECIMAL fldBCD BCD(32,0) Numeric(20,0)
DECIMAL(7) fldBCD BCD(32,0) Numeric(7,0)
DECIMAL(7,2) fldBCD BCD(32,2) Numeric(7,2)
NUMERIC fldFLOAT Number Double
NUMERIC(7) fldFLOAT Number Double
NUMERIC(7,2) fldFLOAT Number Double
FLOAT fldFLOAT Number Double
FLOAT(7) fldFLOAT Number Double
FLOAT(7,2) fldFLOAT Number Double
CHARACTER(10) fldZSTRING Alpha(10) Character(10)
VARCHAR(10) fldZSTRING Alpha(10) Character(10)
DATE fldDATE Date Date
BOOLEAN fldBOOL Logical Logical
BLOB(1,1) fldstMEMO Memo Memo
BLOB(1,2) fldstBINARY Binary Binary
BLOB(1,3) fldstFMTMEMO Formatted memo Memo
BLOB(1,4) fldstOLEOBJ OLE OLE
BLOB(1,5) fldstGRAPHIC Graphic Binary
TIME fldTIME Time Character(11)
TIMESTAMP fldTIMESTAMP Timestamp Datetime
MONEY fldFLOAT, fldstMONEY Money Double
AUTOINC fldINT32, fldstAUTOINC Autoincrement Autoinc
BYTES fldBYTES Bytes(1) N/A
BYTES(10) fldBYTES Bytes(10) N/A


Наверх

Титульная страница Поиск, карта сайта Написать письмо