Access
 sql >> база данни >  >> RDS >> Access

Параметри на низ за свързване за Schema.ini

Параметри на низ за връзка за Schema.ini

Създаване на schema.ini отварянето или свързването на текстови файлове от Access е един от двата възможни метода, които могат да се използват за работа с данни, съдържащи се във файловете от Access. В предишната статия разгледахме параметрите на низа за връзка на текстовия файл. Обсъдихме също необходимостта от допълнителна информация за схемата, за да помогнем на Access да анализира текстовите файлове. Microsoft има страница за schema.ini , но има няколко неща, които не са ясни веднага, така че ще ги разгледаме тук.

schema.ini файл

Всяка папка може да има един файл с име schema.ini за където можем да дефинираме всички възможни формати на текстови файлове, които очакваме да намерим в папката. За всеки текстов файл трябва да започнем раздел с името на файла и след това да опишем структурата. Ще започнем с минимален раздел на пробата, след което анализираме всяка част. Не е необходимо да се изброяват всички текстови файлове. Всички текстови файлове, които не са описани от schema.ini ще се обработва просто с помощта на настройките по подразбиране за добро или лошо. Нека разгледаме структурата на schema.ini .

[products.txt]

Format=CSVDelimited
ColNameHeader=True
MaxScanRows=0

Col1=Products Text
Col2=Count Long

Имайте предвид, че първият ред за започване на раздел трябва да препраща към текстов файл. Освен това трябва да има скоби, за да посочи началото на раздел. Както може би вече знаете, schema.ini може да опише повече от един текстови файлове, така че линията в скоби помага да се запази схемата на всеки текстов файл отделна.

Следващият набор от редове се занимава с цялостния формат на файла и как Access трябва да обработва текстовите файлове. Можем да посочим дали даден текстов файл има заглавки, колко реда да се сканира, каква кодова страница да се използва и т.н.

Последният набор от редове описва отделните колони, тяхното име, тип данни и ширина.

Ще прегледаме валидните опции и възможните стойности за тези 2 комплекта.

Опции за описание на цялостната структура на текстовия файл

Ще видите списък с валидни опции за описание на цялостния формат на текстовия файл. Типично е да се посочи най-малко Format и ColNameHeader но цялото възможно съдържание е по избор. Всеки път, когато са пропуснати, стойностите по подразбиране ще се използват, както е посочено по-долу. Нека да разгледаме как можем да опишем формата на даден текстов файл.

Общи опции за структура

Както бе отбелязано, те са незадължителни, но рядко се пропускат. Независимо от това, настройките по подразбиране идват от ключовете на системния регистър на Text Engine. Повече подробности за ключовете на системния регистър можете да намерите тук.

  • Format :Показва формата на текстовите файлове. Ако е пропуснато, използва регистрационния ключ на Text Engine, Format . Валидни стойности са:
    • TabDelimited :Табулатори ограничават колоните.
    • CSVDelimited :Запетаи разделят колоните като CSV файл.
    • Delimited(*) :Един знак ограничава колоните. Може да бъде всеки знак с изключение на " характер. Например текстов файл, разделен с | символът трябва да докладва Format=Delimited(|) .
    • FixedLength :Колоните са с фиксирана дължина; съдържанието трябва да бъде съответно подплатено. Всички колони трябва да имат дефинирана ширина.

  • CharacterSet :Използва специфична кодова страница за четене на текстовия файл. Възможните стойности могат да бъдат ANSI , OEM , Unicode или всякакви числови стойности, представляващи желаните кодови страници. За да намерите всички възможни кодови страници, поддържани на вашата машина с Windows, погледнете в ключа на системния регистър Computer\HKEY_CLASSES_ROOT\MIME\Database\Codepage\ . Например, ако искате да използвате utf-8 кодиране, можете да посочите CharacterSet=65001 .
  • ColNameHeader :Показва дали първият ред съдържа имената на колоните. Когато е пропуснато, използва ключа на системния регистър на Text Engine, FirstRowHasNames . Стойностите могат да бъдат или True или False .
  • MaxScanRows :Брой редове Access трябва да сканира в текстов файл, за да отгатне възможния тип данни. Ако е зададено на 0, Access ще сканира целия файл. Регистрационният ключ на текстовата машина MaxScanRows се използва, когато е пропуснато.

Опции за локализация

Тези опции се занимават основно с локализиране на данните, кодирани в дати, часове или валута. Всички тези опции не са задължителни и винаги, когато са пропуснати, се използват настройките за регион на Windows.

  • DateTimeFormat :Форматът за дата/час, който да се използва.
  • DecimalSymbol :Всеки единичен знак, използван като разделител между интегрални и дробни части на число.
  • NumberDigits :Брой цифри, използвани в дробната част на число.
  • NumberLeadingZeroes :Показва дали трябва да има водеща нула за числа по-големи от -1 и по-малко от 1. Трябва да е или True или False .
  • CurrencySymbol :Идентифицира символа, който трябва да се интерпретира като валута.
  • CurrencyPosFormat :Описва как трябва да се отчитат паричните суми в текстовия файл. Има четири валидни стойности, които да се използват за тази настройка, представени с числа от 0 до 3. Обърнете внимание, че примерът използва $ но при реална употреба, той ще използва действителния символ на валута, дефиниран от CurrencySymbol или чрез настройката на Windows.
    • 0 :Префикс без интервал (напр. $1)
    • 1 :Суфикс без интервал (1$)
    • 2 :Префикс с интервал между тях ($ 1)
    • 3 :Суфикс с интервал между (1 $)

  • CurrencyDigits :Брой цифри в дробна част от валутната сума.
  • CurrencyNegFormat :Показва форматирането на отрицателна валутна сума. Това е стойност между 0-15, както е показано по-долу. Обърнете внимание, че примерът използва $ но при реална употреба, той ще използва действителния символ на валута, дефиниран от CurrencySymbol или чрез настройката на Windows.
    • 0 :($1)
    • 1 :-$1
    • 2 :$-1
    • 3 :$1-
    • 4 :(1$)
    • 5 :-$1
    • 6 :1-$
    • 7 :1$-
    • 8 :-1 $
    • 9 :-$1
    • 10 :1 $-
    • 11 :$1-
    • 12 :$ -1
    • 13 :1- $
    • 14 :($1)
    • 15 :(1 $)

  • CurrencyThousandSymbol :Единичен знак за обозначаване на разделяне на хиляди във валутна сума. Ако се пропусне, се използва настройката на Windows.
  • CurrencyDecimalSymbol :Един знак за обозначаване на десетичната запетая на сума във валута.

Опции за дефиниране на колони

Видяхме как можем да се справим с цялостния формат на файла, но трябва да дадем повече информация за отделната колона. По-важното е, че трябва да можем да картографираме очакваните типове данни на колони. Следователно, третият раздел на schema.ini трябва да описва всяка колона с толкова редове, колкото има колони в целевия текстов файл. Общият формат за дефиницията на колоната може да изглежда така:

ColN=Name Type Width #

Важно е да се отбележи, че с изключение на префикса ColN= , всички части са по избор, но дали можете да пропуснете, зависи от други фактори, както е обсъдено по-долу.

  • ColN= :Задължителен префикс, който трябва да бъде във всяко начало на реда. N трябва да е число, започващо от 1 и нарастващо.
  • Name :Дава името на колона. Ако ColNameHeader е настроен на True , Name параметърът може да бъде пропуснат. Ако обаче е False , тогава трябва да посочите Name за да избегнете грешки.
  • Type :Показва типа данни. Ако се пропусне, Access ще използва най-доброто си предположение въз основа на сканираните редове, управлявано от MaxScanRows опция. type трябва да бъде настроена на една от тези валидни стойности. Синонимите са изброени след каноничната ключова дума:
    • Bit , Boolean
    • Byte
    • Short , Integer
    • Long
    • Currency
    • Single
    • Double , Float
    • DateTime
    • Text , Char
    • Memo , LongChar
    • Date

  • Width # :Показва ширината на колоната. Ако това е посочено, литералът Width трябва да бъдат включени и след това последвани от число. Ако искате да посочите, че колона е широка 50 знака, трябва да напишете:
    Col17=ProductDescription Text Width 50
    За файлове с фиксирана ширина, Width е задължително. При файлове с разделители можете да го пропуснете. Въпреки това Access ще използва тази информация за текстови полета, за да ограничи дължината и евентуално да съкрати съдържанието. За други типове данни ширината няма ефект.

Заключение

Видяхте как можете да контролирате схемата на текстов файл с помощта на schema.ini които можете да създадете в папка, където се намират текстовите файлове. Можете също да видите, че schema.ini ви дава по-подробен контрол върху регионалните настройки, което може да е полезно, ако работите с международни данни и не можете да контролирате валутата или форматирането на датата. В следващата статия ще разгледате алтернативния метод за описание на структурата на текстовия файл с помощта на системните таблици на Access.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да създадете обикновена заявка за избор в Design View в Access 2016

  2. Как да изберете правилната база данни за вашия бизнес

  3. Как да изградим база данни за достъп в облака

  4. Съвети и трикове за Microsoft Access, част 2 – Формуляри

  5. Как да видите най-голямата възвръщаемост от вашата база данни на Microsoft Access