logo search
TurboProlog / Документация / TOM_2

Db_statistics/5 Внешняя База Данных

Назначение Возвращает информацию о базе данных

Обращение db_statistics(БДанн,КолТерм,ОбПам,РазмБД,СвПр)

Домены (db_selector,real,real,real,real)

Шаблоны описания (вх,вых,вых,вых,вых)

аргументов

Описание db_statistics возвращает такую статистическую

информацию о базе данных с именем БДанн:

# КолТерм связан с общим количеством термов в базе

данных.

# ОбПам связан с объемом оперативной памяти в

байтах, которая занимается таблицами при открытии

базы данных.

# РазмБД связан с общим объемом памяти в байтах,

занятой в базе данных термами и определителями.

Если база данных размещается в дисковом файле и

РазмБД имеет значение меньшее чем размер этого

файла, то файл нужно уплотнить при помощи

db_copy.

# Значение, которое принимает СвПр, определяет, где

в базе данных будет происходить размещение

данных.

* При размещении базы данных в оперативной памяти

СвПр связывается с числом байт между началом

общего стекового пространства и началом

динамической области. Возможно будет

еще некоторое число дополнительных свободных

байт, которые не будут включены в это число.

* При размещении базы данных в системе расширения

памяти СвПр связывается с числом незанятых

байтов в расширенной памяти.

* При размещении базы данных в файле СвПр

связывается с объемом свободной памяти в байтах

на диске, содержащем файл.

Неудачное Никогда не дает.

завершение

Ошибки 1034 База данных не открыта.

Пример

domains

db_selector = mydba

goal

db_open(mydba,"register.bin",in_file),

db_statistics(mydba,NoOfTerms,MemSize,DbaSize,FreeSize),

write("\n\nОбщее количество записей в базе",

" данных: ",NoOfTerms),

write("\nОбъем свободной оперативной памяти: ",

MemSize),

write("\nОбъем базы данных в байтах: ",DbaSize),

write("\nСвободное пространство на диске в",

" байтах: ",FreeSize).

debug/0

Назначение Выполняет INT1 для вызова отладчика операционной

системы

Обращение debug

Домены (нет)

Шаблоны описания (нет)

аргументов

Описание debug, вызываясь в INT1, дает возможность пошагово

проследить работу кода Турбо Пролога при помощи

отладчика операционной системы. Это удобно, когда

необходима стыковка программ, написанных на разных

языках.

Неудачное Никогда не дает.

завершение

Ошибки Отсутствуют.

Пример

C:\PROLOG >debug prolog.exe

-g

+++++++++ Нажмите вып +++++++

Goal: debug,X=2+3

AX=022D BX=0069 CX=0125 DX=0500 SP=3ADA

BP=3AF2 SI=3E84 DI=0105

DS=552D ES=642F SS=5DDA CS=27E5 IP=0014

NV UP EI PL NZ NA PO NC

27E5:0014 CB RETF

-t

AX=022D BX=0069 CX=0125 DX=0500 SP=3ADE

BP=3AF2 SI=3E84 DI=0105

DS=552D ES=642F SS=5DDA CS=96C0 IP=012F

NV UP EI PL NZ NA PO NC

96C0:012F B80200 MOV AX,0002

-u

96C0:012F B80200 MOV AX,0002

96C0:0132 B90300 MOV CX,0003

96C0:0135 03C1 ADD AX,CX

96C0:0137 8946FE MOV [BP-02],AX

-g

X=5

1 Решение

deletefile/1

Назначение Уничтожает файл

Обращение deletefile(ИмяФайлDOS)

Домены (string)

Шаблоны описания (вх)

аргументов

Описание deletefile уничтожает файл ИмяФайлDOS на активном

диске.

Неудачное Никогда не дает.

завершение

Ошибки 1072 Невозможно уничтожить файл.

Пример

Goal: file_str("dd.txt",X)

X=Файл из одной строки

1 Решение

Goal: deletefile("dd.txt")

Да

Goal: file_str("dd.txt",X)

0 Решений