Документація Database Tour Зміст Індекс

Створення схеми для текстової таблиці

Початок Попередній Наступний

Якщо у вас є проблеми з відкриттям в Database Tour текстового або CSV-файлу або його структура полів відрізняється від очікуваної, це, ймовірно, може значити, що для цього файлу відсутня схема, що описує структуру полів, або ця схема некоректно створена. В подібних випадках вам потрібно створити або змінити схему. Ми рекомендуємо завжди створювати схеми для текстових таблиць. Схеми розміщуються в окремих файлах (файлах схем), тому створення, вилучення та зміна схеми не змінюють сам текстовий або CSV-файл (файл даних). Якщо файл даних не має відповідного файла схеми, то схема будується в пам'яті з використанням замовчань, що може бути небажаним в багатьох випадках.

Файли схем є звичайними текстовими файлами і повинні бути розміщені в тій же теці, де знаходяться файли з даними. Для з'єднань BDE, файл схеми повинен мати таку ж назву, як і файл з даними, але мати розширення .SCH. Для з'єднань ADO, схеми всіх файлів з певної теки містять в одному файлі, що називається Schema.ini. Додаткову інформацію про створення схем читайте в документації до вашої машини баз даних.

Схеми можна створювати, вилучати або редагувати в Database Tour, на закладці Схеми. Досвідчені користувачі для цих цілей можуть також використовувати будь-який текстовий редактор.

Для створенння, редагування або вилучення схеми для певної текстової або CSV-таблиці відкрийте в Database Tour папку, що містить даний файл, та перейдіть на закладку Схема.

Створення схеми:

Клацніть кнопку Створити. З'явиться нове вікно зі списком всіх таблиць поточної бази даних, для яких немає схем. Виберіть потрібну таблицю і клацніть OK. З'явиться нове вікно, в якому ви можете в зручному візуальному режимі створити схему і подивитися, як це вплине на відображення даних таблиці.

Редагування існуючої схеми:

Хоча створення схем можливо в зручному візуальному режимі, редагування існучої схеми можливе лише в текстовому режимі. Виберіть потрібну схему зі списку схем. Схема відкриється в правій панелі. Перейдіть до закладки Скрипт і клацніть кнопку Копіювати до редактора. Відкоригуйте схему в редакторі і клацніть кнопку Записати в файл.

Вилучення схеми:

Виберіть потрібну схему зі списку схем і клацніть кнопку Вилучити або натисніть Delete.

Зауваження

1. Рекомендується, щоб файли даних не містили символів переводу каретки всередині полів, бо ці символи використовуються для ідентифікації записів текстової таблиці.

2. Для з'єднань BDE файл даних повинен закінчуватися символом переводу каретки.

Для тих, хто віддає перевагу створенню або редагуванню схем вручну в текстовому режимі, приводимо кілька прикладів:

Приклад 1. Поля в файлі даних розділені символом |.

Вміст файла даних (programs.txt):
1|Database Tour|www.databasetour.net|2291
2|Database Tour Pro|www.databasetour.net|2558
3|Exportizer|www.vlsoftware.net/exportizer|1182
4|Exportizer Pro|www.vlsoftware.net/exportizer-pro|1522
5|Icons from File|www.vlsoftware.net/icons-from-file|879
6|Rename Us|www.vlsoftware.net/rename-us|712
7|Rename Us Pro|www.vlsoftware.net/rename-us-pro|918
8|Free Renju|www.vlsoftware.net/free-renju|404
9|Logical Crossroads|www.vlsoftware.net/logical-crossroads|522
10|Hanoi Towers|www.vlsoftware.net/hanoi-towers|99
11|Reportizer|www.reportizer.net|2046
12|Reportizer Viewer|www.reportizer.net|822
Як даний файл виглядає в програмі без схеми (з'єднання ADO):
Текстова таблиця без схеми
Вміст файла схеми BDE (programs.sch): Вміст файла схеми ADO (Schema.ini):
[programs]
CHARSET = ASCII
FILETYPE = VARYING
DELIMITER = |
Field1 = ID,NUMBER,18,0,0
Field2 = NAME,CHAR,30,0,18
Field3 = URL,CHAR,50,0,48
Field4 = SIZEKB,NUMBER,18,0,98
[programs.txt]
ColNameHeader=False
Format=Delimited(|)
CurrencyThousandSymbol=
CurrencyDecimalSymbol=.
DecimalSymbol=.
TextDelimiter=
MaxScanRows=25
CharacterSet=ANSI
Col1=ID Integer Width 18
Col2=NAME Char Width 30
Col3=URL Char Width 50
Col4=SIZEKB Integer Width 18
Як даний файл виглядає в програмі зі схемою:
Текстова таблиця зі схемою

Приклад 2. Поля в файлі даних розділено комами. Дані полів, в яких присутні коми, обмежені лапками.

Вміст файла даних (rptfuncs.txt):
MIN(x),Returns the lowest value of all records in field x
MAX(x),Returns the highest value of all records in field x
SUM(x),Sums values of all records in field x
COUNT(x),Returns count of all non-empty values of all records in field x
AVERAGE(x),Returns the average value of all records in field x
"MINEX(x, y)","Returns the lowest value of all records in field x, where condition y is True or y > 0"
"MAXEX(x, y)","Returns the highest value of all records in field x, where condition y is True or y > 0"
Як даний файл виглядає в програмі без схеми (з'єднання BDE):
Текстова таблиця (розділювачі - коми) без схеми
Вміст файла схеми BDE (rptfuncs.sch): Вміст файла схеми ADO (Schema.ini):
[rptfuncs]
CHARSET = ASCII
FILETYPE = VARYING
DELIMITER ="
SEPARATOR =,
Field1 = FUNCNAME,CHAR,25,0,0
Field2 = FUNCDESCR,CHAR,120,0,25
[rptfuncs.txt]
ColNameHeader=False
Format=Delimited(,)
FixedFormat=RaggedEdge
CurrencyThousandSymbol=
CurrencyDecimalSymbol=.
DecimalSymbol=.
MaxScanRows=25
CharacterSet=ANSI
Col1=FUNCNAME Char Width 25
Col2=FUNCDESCR Char Width 120
Як даний файл виглядає в програмі зі схемою:
Текстова таблиця (розділювачі - коми) зі схемою

Приклад 3. Поля в файлі даних мають фіксовану ширину.

Вміст файла даних (customer.txt):
1                   Sandra      Bush            Portland        United States   
2                   Eric        Miles           Edmonton        Canada          
3                   Berndt      Mann            Hamburg         Germany         
4                   Marek       Przybylsky      Krakow          Poland          
5                   John        Hladni          Bedford         United States   
6                   Bogdan      Vovchenko       Kyiv            Ukraine         
7                   Paul        Vogel           Hamburg         Germany   
Як даний файл виглядає в програмі без схеми (з'єднання ADO):
Текстова таблиця (поля фіксованої ширини) без схеми
Вміст файла схеми BDE (customer.sch): Вміст файла схеми ADO (Schema.ini):
[customer]
CHARSET = ASCII
FILETYPE = FIXED
Field1 = ID,FLOAT,20,2,0
Field2 = FIRSTNAME,CHAR,12,0,20
Field3 = LASTNAME,CHAR,16,0,32
Field4 = CITY,CHAR,16,0,48
Field5 = COUNTRY,CHAR,16,0,64
[customer.txt]
ColNameHeader=False
Format=FixedLength
FixedFormat=RaggedEdge
MaxScanRows=25
CharacterSet=ANSI
Col1=ID Float Width 20
Col2=FIRSTNAME Char Width 12
Col3=LASTNAME Char Width 16
Col4=CITY Char Width 16
Col5=COUNTRY Char Width 16
Як даний файл виглядає в програмі зі схемою:
Текстова таблиця (поля фіксованої ширини) зі схемою