Упражнение 5

Контрол на данните  във вариант (изглед) Design

1.  Размер на полето (FieldSize Property)

Свойството  FieldSize  определя максималния брой позиции, които могат да заемат данните, записани в полета  от тип Text, Number или AutoNumber.

Установяване:

Ако свойството DataType има стойност Text, то FieldSize може да приема стойности от 0 до 255

Ако свойството DataType има стойност AutoNumber, то FieldSize трябва да има  стойност от Long Integer или Replication ID

Ако свойството DataType има стойност Number, то FieldSize трябва да има  стойност определяна съгласно таблицата:

Setting

описание

точност

памет

Byte

Числата са цели положителни в диапазон от 0 to 255

-

1 byte

Decimal

Числата са реални в диапазон от –10^28–1 до 10^28–1 (.mdb)

28

12bytes

Integer

Числата са цели в диапазон от –32 768 to 32 767

-

2 bytes

Long Integer

(Default) Числата са цели в диапазон от –2 147 483 648 to 2 147 483 647

-

4 bytes

Single

Числата са реални в диапазон от –3.402823E38 до –1.401298E–45
за отрицателните и от 1.401298E–45 до 3.402823E38 за положителните

7

4 bytes

Double

Числата са реални в диапазон от –1.79769313486231E308 до

–4.94065645841247E–324 за отрицателните и

от 4.94065645841247E–324 до1.79769313486231E308 за положителните

15

8 bytes

Replication ID

Глобален уникален идентификатор (GUID)

N/A

16 bytes

 

Подразбиращите се размери на полетата  от тип Text и Number могат да се настройват от менюто Tools с команда Options → Tables/Queries→ Default Field Sizes

Добре е да се използват най-малките приемливи стойности за това поле  (FieldSize) с цел по-голямо бързодействие и икономия на памет. При недостатъчен размер на полето могат да се загубят част от данните(низовете се орязват отдясно, дробите се закръгляват.

Типът данни Currency е подходящ за голям брой пресмятания с точност не по-голяма от 4 знака, тъй като за данните от този тип са реализирани операции с фиксирана точка (останалите нецелочислени данни се обработват с операции с плаваща точка)

2. Определяне на форматирането чрез свойството Format (Format Property)

Свойството Format се използва за да определи вида, в който данните от тип number, date, time, и text се изобразяват на екрана или се разпечатват. То не влияе на начина на представяне и обработване на данните.  Могат да се използват стандартни формати или ако те са неподходящи да се дефинират потребителски чрез специално предназначени за това правила и символи. 

Подразбиращите се форматните спецификации, които Microsoft Access използва за типовете данни Date/Time, Number and Currency, Text and Memo, and Yes/No зависят от регионалните настройки от Regional Options в Control Panel. Освен стандартните формати всички типове допускат използване на дефинирани от потребителя формати. Символите, показани в долната таблица могат да се използват в потребителските формати за всички типове данни

 

 

символ

значение

(интервал)

Показва празни позиции като части от литерал.

"ABC"

Всички символи, поставени в кавички се изписват като литерали.

!

Установява ляво подравняване вместо дясно.

*

Запълва празните позиции със следващия символ.

\

Показва следващия символ като литерал.

[цвят]

Показва данните в цвета, указан в скобите. Допустими цветове: Black, Blue, Green, Cyan, Red, Magenta, Yellow, White.

Освен това за всеки от типовете данни  Number and Currency , Date/Time, Yes/No, и Text and Memo си има специфични форматни символи, които не могат да се използват от другите типове.

 

2.1 Формати за дата и време - Date/Time Data Type

Стандартни формати:

формат

описание

General Date

(подразбиращ се) може да се изобразява само дата, само време или и двете взависимост от това кое има стойност; Комбинация от  Short Date и Long Time.

Примери: 4/3/93, 05:34:00 PM, and 4/3/93 05:34:00 PM.

Long Date

Както в Windows: Saturday, April 3, 1993.

Medium Date

пример: 3-Apr-93.

Short Date

Пример: 4/3/93.

Long Time

Пример: 5:34:23 PM.

Medium Time

Пример: 5:34 PM.

Short Time

Пример: 17:34.

 

Символи, които се използват в потребителските формати за дата и време

 

символ

описание

: (colon)

Разделител при времето.

/

Разделител в датите .

d

Ден от месеца, записан с цифри (1 до 31).

dd

Ден от месеца, записан с цифри (01 до 31).

ddd

Трибуквени съкращения за дните (Sun до Sat).

dddd

Пълно име на дните (Sunday to Saturday).

w

Дните на седмицата (1 до 7).

ww

Седмиците в годината (1 до 53).

m

месеци (1 до 12).

mm

месеци (01 до 12).

mmm

месеци (Jan до Dec).

mmmm

месеци (January до December).

q

Date displayed as the quarter of the year (1 до 4).

y

Номер на ден в годината (1 до 366).

yy

Последните две цифри в годината (01 до 99).

yyyy

Full year (0100 to 9999).

h

часове (0 до 23).

hh

часове (00 до 23).

n

минути (0 до 59).

nn

минути (00 до59).

s

секунди (0 до 59).

ss

секунди (00 до 59).

AM/PM

12 часово време  "AM" или "PM".

Потребителските формати, които не съответстват на регионалните настройки се игнорират

Примери за потребителски формати за дата:

Формат

изписване

ddd", "mmm d", "yyyy

Mon, Jun 2, 1997

mmmm dd", "yyyy

June 02, 1997

"This is week number "ww

This is week number 22

"Today is "dddd

Today is Tuesday

 

2.2 Формати за числа и валута

 

формат

описание

General Number

(подразбиращ се) Представя числата във вида, в който са въведени.

Currency

Използва настройките на Windows за представяне на валута.

Fixed

Показва се поне една цифра; Използват се регионалните настройки на Windows за представяне на отрицателните числа, десетичния разделител и позиции.

Percent

Умножава въведената стойност по 100 и дописва знак за процент (%); използва настройките на Windows за представяне на отрицателните числа, десетичния разделител и позиции.

Scientific

Използва стандартния scientific формат.

 

Потребителски числови формати

Имат 4 секции: за положителни, отрицателни числа, нулата и неопределените стойности. Отделните секции се разделят чрез “;”

Пример : потребителски формат завалута:

$#,##0.00[Green];($#,##0.00)[Red];"Zero";"Null"

Символи, които се използват в потребителските числови формати :

 

 

символ

описание

. (точка)

Десетичен разделител. Настройва се от Windows.

0

Указва място за цифра. На съответната позиция се изобразява или цифра или 0.

#

Указва място за цифра. На съответната позиция се изобразява или цифра или нищо.

$

изобразява "$".

%

Процент. Стойността се умножава по100 и след нея се записва “%”.

E– или e–

E+ или e+

Знак за експонента в  Scientific представянето (0.00E–00 or 0.00E00).

2.3 Потребителски текстови формати

Използват  се следните символи:

символ

значение

@

Задължително въвеждане на един символ.

&

Незадължителен символ.

< 

Всичко въведено се преобразува в lowercase.

> 

Всичко въведено се преобразува в uppercase.

 

Потребителските текстови формати имат до две секции със следното значение:

 

секция

предназначение

първа

Формат за текстовите полета.

втора

Формат за празния низ.

 

Примери

формат

въведено

Изписва се

@@@-@@-@@@@

465043799

465-04-3799

@@@@@@@@@

465-04-3799
465043799

465-04-3799
465043799

> 

davolio
DAVOLIO
Davolio

DAVOLIO
DAVOLIO
DAVOLIO

< 

davolio
DAVOLIO
Davolio

davolio
davolio
davolio

@;"Unknown"

Null value

Unknown

 

Zero-length string

Unknown

 

Any text

Same text as entered is displayed

 

2.4 Логически данни – (Yes/No )

Microsoft Access използва контрол Check box като подразбиращ се за логически данни. Потребителските формати се игнорират когато се използва контрол check box. Те работят само с контрол Text box.

Потребителските формати за логически данни имат три секци:

секция

предназначение

първа

Не действа на логическите данни, но  (;) трябва да се използват.

втора

Текст, който се показва на мястото на  Yes, True или On стойностите.

трета

Текст, който се показва на мястото на No, False или Off стойностите values.

Пример:

Потребителски формат за логически данни в контрол text box . контролът ще показва "Always" със син текст за истина (Yes, True или On), и с червен текст "Never" за лъжа (No, False или Off).

;"Always"[Blue];"Never"[Red]

3. Свойството входна маска (InputMask Property)

Свойството  InputMask  се използва за улесняване въвеждането на данните и контролиране на стойностите, които могат да се въвеждат. То може да показва как точно да се въвеждат данните и може да се установява чрез помощник (Фиг.1).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Входната маска може да съдържа до 3 секции, разделени с „;”. 

 

Секция

описание

първа

Задава самата входна маска; например, !(999) 999-9999.

втора

Определя дали  Microsoft Access ще записва в паметта само символите, които въвеждаме в полето (при записана 1 в тази секция или ако тя е празна) или ще съхранява и литералните символи в маската (при записана 0 във втората секция)

трета

Определя символа, който Microsoft Access ще използва за да определи конкретната позиция, в която трябва да се въвежда символ. За показване на празна позиция се използва " ".

При създаване на входна маска се използват специални символи, чрез които се изисква въвеждане на данни от определен тип на точно определени позиции. На  някои позиции трябва да се укаже, че въвеждането на данни е задължително, а другаде – не (напр в тел. Номер кодът е задължителен, а после може да има 3, 4 или повече цифри) За различни типове данни се използват различни символи. В долната таблица са показани най-често използваните символи и тяхното предназначение.

символ

предназначение

0

цифра, задължително е да се въведе, + или не могат да се въвеждат

9

Цифра или интервал, не е задължително въвеждането,  + или не могат да се въвеждат

#

Цифра или интервал, не е задължително въвеждането,  + или  могат да се въвеждат, празните  интервали се изписват при въвеждане, но не се съхраняват в паметта.

L

Задължително въвеждане на буква.

?

Незадължително въвеждане на буква.

A

Задължително въвеждане на главна латинска буква или цифра.

a

Незадължително въвеждане на главна латинска буква или цифра.

&

Задължително въвеждане на символ.

C

Незадължително въвеждане на символ.

. , : ; - /

Разделители – между цялата и дробната част, при датите и времето, както са настроени в Regional Settings Properties.

< 

Налага превръщане на всички символи в  lowercase.

> 

Налага превръщане на всички символи в  uppercase.

\

Символите след този символ ще се изобразяват като литерални символи (например, \A ще изобрази A).

При настройка на свойството InputMask на  "Password" се въвеждат пароли. Всеки въведен в съответния контрол символ се записва правилно, но се изобразява с (*).

При едновременно определяне на формат и входна маска за едно и също поле форматът е с по-висок приоритет.

Примери:

Входна маска

Изобразява се

(000) 000-0000

(206) 555-0248

(999) 999-9999

(206) 555-0248

 

( ) 555-0248

(000) AAA-AAAA

(206) 555-TELE

#999

–20

 

2000

>L????L?000L0

GREENGR339M3

 

MAY R 452B7

>L0L 0L0

T2F 8M4

00000-9999

98115-

 

98115-3007

>L<??????????????

Maria