4. Глава II. ЗЗЗ база
ЗЗЗ база е NoSQL система за управление на бази данни и знания.
Тя съчетава следните характеристики:
- йерархична;
- обектно-ориентирана;
- разпределена;
- скалируема;
- подходяща за обработка както на много малки(няколко байта), така и на невероятно големи обеми от информация(петабайти x n);
- всички елементи са индексирани;
- възможност за мигновено търсене на най-близките до несъществуващ елемент - трудна задача за повечето разпространени SQL и NoSQL бази данни при голямо количество на елементите;
- функционален, макро език за управление подобен на Lisp;
- права за достъп;
- възможност за лесно ползване от различни програмни езици;
- технология клиент-сървър, като е възможно един сървър да бъде клиент на друг сървър;
- технология за сортиране на елементи със сложност O(N);
- мигновено търсене на елемент в множество с огромен брой(трилиони) елементи;
4.1 Команди управляващи базата
Тези команди позволяват свободното избиране на ЗЗЗ сървъри и ЗЗЗ бази както и придвижване в техните множества/елементи. По време на придвижването можете да изтривате и променяте множества/елементи или да влизате в подмножествата и надмножествата им.
4.1.1 Избор на ЗЗЗ сървър
#[~+;localhost;80]
#[cout;
#[~>;localhost;80;10000;[#[cout;Hello world from another ZZZServer!]]]
]
#[~-;localhost;80]
#[~+;localhost;80]
#[cout;
#[~>;localhost;80;10000;[#[cout;Hello world from another ZZZServer!]]]
]
#[~-;localhost;80]
#[~+;localhost;80]
#[cout;
#[~>;localhost;80;10000;[#[cout;Hello world from another ZZZServer!]]]
]
#[~-;localhost;80]
4.1.2 Избор на ЗЗЗ база
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]]
#[.=;_processId_;#[~~v;##[_base_];10000]]
#[==;true;#[~~>^;##[_base_];##[_processId_]];;]
#[~~x.;##[_base_];##[_processId_]]
#[==;true;#[~~+.;##[_base_];##[_processId_];ZZZ];;]
#[==;true;#[~~>v;##[_base_];##[_processId_]];;]
#[==;true;#[~~+.;##[_base_];##[_processId_];плодове];;]
#[==;true;#[~~>v;##[_base_];##[_processId_]];;]
#[==;true;#[~~+.;##[_base_];##[_processId_];ябълки];;]
#[==;true;#[~~+.;##[_base_];##[_processId_];круши];;]
#[==;true;#[~~+.;##[_base_];##[_processId_];сливи];;]
#[==;true;#[~~>^;##[_base_];##[_processId_]];;]
#[==;true;#[~~+.;##[_base_];##[_processId_];зеленчуци];;]
#[==;true;#[~~>v;##[_base_];##[_processId_]];;]
#[==;true;#[~~+.;##[_base_];##[_processId_];моркови];;]
#[==;true;#[~~+.;##[_base_];##[_processId_];краставици];;]
#[==;true;#[~~+.;##[_base_];##[_processId_];зеле];;]
#[==;true;#[~~>^;##[_base_];##[_processId_]];;]
#[~~.;##[_base_];##[_processId_]]
#[~~-;##[_base_]]
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_base_];;/]
]
#[ open the base for writing ]#[ remove the base ]
#[ add ;плодове]
#[ subset ]
#[ add ;ябълки]#[ add ;круши]#[ add ;сливи]
#[ superset ]
#[ add ;зеленчуци]
#[ subset ]
#[ add ;моркови]#[ add ;краставици]#[ add ;зеле]
#[ superset ]
#[ close the base ]
#[ get the base as a simple text ]
~~-
Освобождава връзка към ЗЗЗ база
Първият параметър е името на базата.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
Тук се разполагат командите за достъп до базата
...
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_base_];;/]
]
#[ open the base for writing ]
Тук се разполагат командите за достъп до базата
...
#[ close the base ]
#[ get the base as a simple text ]
4.1.3 Транзакционна защита + управление на четенето и записа
~~v
Начало на процес за запис в ЗЗЗ база
Не позволява запис, ако е включена опцията -ban base write от командния ред на ЗЗЗ сървъра!
Първият параметър е името на базата. Вторият параметър е времето в милисекунди за изчакване на активирането на процеса за запис. Третият незадължителен параметър е име на потребител. Четвъртият незадължителен параметър е парола. Резултатът е номерът на процеса, който при успех е по-голям или равен на 0.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за запис в ЗЗЗ\
база
Тук се разполагат командите за достъп до базата
...
#[~~+.;##[_base_];##[_processId_];елемент] -- Добавя елемент в главното мно\
жество на базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_base_];;/]
] -- Извежда базата като обикновен текст
#[ open the base for writing ]
Тук се разполагат командите за достъп до базата
...
#[ add ;елемент] -- Добавя елемент в главното множество на базата
#[ close the base ]
#[ get the base as a simple text ]
~~^
Начало на процес за четене от ЗЗЗ база
Първият параметър е името на базата. Вторият незадължителен параметър е име на потребител. Третият незадължителен параметър е парола. Резултатът е номерът на процеса, който при успех е по-голям или равен на 0.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ ба\
за
Тук се разполагат командите за достъп до базата
...
#[cout;
#[~~^.;##[_base_];##[_processId_]]
] -- Прочита първия елемент от главното множество на базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
Тук се разполагат командите за достъп до базата
...
#[cout;
#[ get ]
] -- Прочита първия елемент от главното множество на базата
#[ close the base ]
~~.
Край на процес за четене или запис в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
#[cout;
##[~~^.;##[_base_];##[_processId_]]
] -- Прочита първия елемент от главното множество на базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[cout;
#[ get ]
] -- Прочита първия елемент от главното множество на базата
#[ close the base ]
~~vx
Прекъсва процес за запис в ЗЗЗ база като оставя базата с непроменено съдържание
Първият параметър е името на базата.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от \
ЗЗЗ база
##[~~+.;##[_base_];##[_processId_];нов елемент] -- Записва елемент в главно\
то множество на базата
#[~~vx;##[_base_]] -- Отменя всички промени от текущия процес за зап\
ис
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис \
в ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_base_];;/]
] -- Извежда базата като обикновен текст
#[ open the base for writing ]
#[ add ;нов елемент] -- Записва елемент в главното множество на базата
#[ undo changes ] -- Отменя всички промени от текущия процес за запис
#[ close the base ]
#[ get the base as a simple text ]
4.1.4 Работа с множествата и елементите на ЗЗЗ база
~~+.
Добавя елемент към текущото множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е самият елемент.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за запис в ЗЗ\
З база
##[~~+.;##[_base_];##[_processId_];нов елемент] -- Записва елемент в главно\
то множество на базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис \
в ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_base_];;/]
] -- Извежда базата като обикновен текст
#[ open the base for writing ]
#[ add ;нов елемент] -- Записва елемент в главното множество на базата
#[ close the base ]
#[ get the base as a simple text ]
~~/.
Променя текущия елемент от множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е самата нова стойност на елемента.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за запис в З\
ЗЗ база
##[~~+.;##[_base_];##[_processId_];нов елемент] -- Записва елемент в главн\
ото множество на базата
#[~~/.;##[_base_];##[_processId_];променен елемент] -- Променя текущия елем\
ент в базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис\
в ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_base_];;/]
] -- Извежда базата като обикновен текст
#[ open the base for writing ]
#[ add ;нов елемент] -- Записва елемент в главното множество на базата
#[ change ;променен елемент] -- Променя текущия елемент в базата
#[ close the base ]
#[ get the base as a simple text ]
~~-.
Изтрива текущия елемент от множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за запис в З\
ЗЗ база
##[~~+.;##[_base_];##[_processId_];нов елемент] -- Записва елемент в главн\
ото множество на базата
#[~~-.;##[_base_];##[_processId_]] -- Изтрива текущия елемент от базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис\
в ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_base_];;/]
] -- Извежда базата като обикновен текст
#[ open the base for writing ]
#[ add ;нов елемент] -- Записва елемент в главното множество на базата
#[ remove ] -- Изтрива текущия елемент от базата
#[ close the base ]
#[ get the base as a simple text ]
~~^.
Прочита текущия елемент от множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
#[cout;##[~~^.;##[_base_];##[_processId_]]] -- Прочита текущия елемент от г\
лавното множество на базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[cout;#[ get ]] -- Прочита текущия елемент от главното множество на базата
#[ close the base ]
~~>.
Придвижва се до елемент от множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е стойността на търсения елемент.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>.;##[_base_];##[_processId_];плодове] -- Придвижва се до елемента "пл\
одове"
#[cout;##[~~^.;##[_base_];##[_processId_]]] -- Прочита текущия елемент от г\
лавното множество на базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ move to ;плодове] -- Придвижва се до елемента "плодове"
#[cout;#[ get ]] -- Прочита текущия елемент от главното множество на базата
#[ close the base ]
~~(.)
Връща дължината на елемент от множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>.;##[_base_];##[_processId_];плодове] -- Придвижва се до елемента "пл\
одове"
#[.=;_елемент_;##[~~^.;##[_base_];##[_processId_]]]
#[cout;
##[_елемент_] ##[chr;9]- елемент##[chr;10]
##[~~(.);##[_base_];##[_processId_]] ##[chr;9]- дължина на елемента в база\
та в байтове##[chr;10]
##[(..);_елемент_] ##[chr;9]- дължина на елемента като низ в символи
] -- Прочита текущия елемент и неговата дължина от базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ move to ;плодове] -- Придвижва се до елемента "плодове"
#[.=;_елемент_;#[ get ]]
#[cout;
##[_елемент_] #[ tab ]- елемент#[ new line ]
#[ length ] #[ tab ]- дължина на елемента в базата в байтове#[ new line ]
##[(..);_елемент_] #[ tab ]- дължина на елемента като низ в символи
] -- Прочита текущия елемент и неговата дължина от базата
#[ close the base ]
~~>v
Придвижва се до подмножеството на елемент от ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>.;##[_base_];##[_processId_];плодове] -- Придвижва се до елемента "пл\
одове"
##[~~>v;##[_base_];##[_processId_]] -- Придвижва се до подмножеството на \
текущия елемент
#[cout;##[~~^.;##[_base_];##[_processId_]]] -- Прочита текущия елемент от б\
азата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ move to ;плодове] -- Придвижва се до елемента "плодове"
#[ subset ] -- Придвижва се до подмножеството на текущия елемент
#[cout;#[ get ]] -- Прочита текущия елемент от базата
#[ close the base ]
~~>^
Придвижва се до надмножеството на елемент от ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>.;##[_base_];##[_processId_];плодове] -- Придвижва се до елемента "пл\
одове"
##[~~>^;##[_base_];##[_processId_]] -- Придвижва се до надмножеството на \
текущия елемент
#[cout;
##[~~^.;##[_base_];##[_processId_]] ##[chr;9]- това е главният елемент/мно\
жество на базата
] -- Прочита текущия елемент от базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ move to ;плодове] -- Придвижва се до елемента "плодове"
#[ superset ] -- Придвижва се до надмножеството на текущия елемент
#[cout;
#[ get ] #[ tab ]- това е главният елемент/множество на базата
] -- Прочита текущия елемент от базата
#[ close the base ]
~~>(.
Придвижва се до първия елемент от текущото множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>.;##[_base_];##[_processId_];плодове] -- Придвижва се до елемента "пл\
одове"
##[~~>(.;##[_base_];##[_processId_]] -- Придвижва се до първия елемент в т\
екущото множество
#[cout;
##[~~^.;##[_base_];##[_processId_]] ##[chr;9]- това е първият елемент в те\
кущото множество
] -- Прочита текущия елемент от базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ move to ;плодове] -- Придвижва се до елемента "плодове"
#[ first ] -- Придвижва се до първия елемент в текущото множество
#[cout;
#[ get ] #[ tab ]- това е първият елемент в текущото множество
] -- Прочита текущия елемент от базата
#[ close the base ]
~~>).
Придвижва се до последния елемент от текущото множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>.;##[_base_];##[_processId_];плодове] -- Придвижва се до елемента "пл\
одове"
##[~~>).;##[_base_];##[_processId_]] -- Придвижва се до последния елемент \
в текущото множество
#[cout;
##[~~^.;##[_base_];##[_processId_]] ##[chr;9]- това е последният елемент в\
текущото множество
] -- Прочита текущия елемент от базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ move to ;плодове] -- Придвижва се до елемента "плодове"
#[ last ] -- Придвижва се до последния елемент в текущото множество
#[cout;
#[ get ] #[ tab ]- това е последният елемент в текущото множество
] -- Прочита текущия елемент от базата
#[ close the base ]
~~>+.
Придвижва се до следващия елемент от текущото множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>+.;##[_base_];##[_processId_]] -- Придвижва се до следващия елемент \
в текущото множество
#[cout;
##[~~^.;##[_base_];##[_processId_]] ##[chr;9]- това е вторият елемент в те\
кущото множество
] -- Прочита текущия елемент от базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ next ] -- Придвижва се до следващия елемент в текущото множество
#[cout;
#[ get ] #[ tab ]- това е вторият елемент в текущото множество
] -- Прочита текущия елемент от базата
#[ close the base ]
~~>-.
Придвижва се до предишния елемент от текущото множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>).;##[_base_];##[_processId_]] -- Придвижва се до последния елемент \
в текущото множество
##[~~>-.;##[_base_];##[_processId_]] -- Придвижва се до предишния елемент \
в текущото множество
#[cout;
##[~~^.;##[_base_];##[_processId_]] ##[chr;9]- това е предпоследният елеме\
нт в текущото множество
] -- Прочита текущия елемент от базата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ last ] -- Придвижва се до последния елемент в текущото множество
#[ previous ] -- Придвижва се до предишния елемент в текущото множество
#[cout;
#[ get ] #[ tab ]- това е предпоследният елемент в текущото множество
] -- Прочита текущия елемент от базата
#[ close the base ]
~~>?
Придвижва се до един от най-близките до търсен елемент от текущото множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е търсеният елемент.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>?;##[_base_];##[_processId_];копър] -- Придвижва се до един от най-бл\
изките до елемент в текущото множество
#[cout;##[~~^.;##[_base_];##[_processId_]]] -- Прочита текущия елемент от б\
азата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ closest ;копър] -- Придвижва се до първия най-близък елемент в текущото \
множество
#[cout;#[ get ]] -- Прочита текущия елемент от базата
#[ close the base ]
~~>(?
Придвижва се до първия най-близък елемент от текущото множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е търсеният елемент.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>(?;##[_base_];##[_processId_];копър] -- Придвижва се до първия най-бл\
изък елемент в текущото множество
#[cout;##[~~^.;##[_base_];##[_processId_]]] -- Прочита текущия елемент от б\
азата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ closest next ;копър] -- Придвижва се до първия най-близък елемент в теку\
щото множество
#[cout;#[ get ]] -- Прочита текущия елемент от базата
#[ close the base ]
~~>)?
Придвижва се до последния най-близък елемент от текущото множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е търсеният елемент.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ б\
аза
##[~~>)?;##[_base_];##[_processId_];копър] -- Придвижва се до последния най\
-близък елемент в текущото множество
#[cout;##[~~^.;##[_base_];##[_processId_]]] -- Прочита текущия елемент от б\
азата
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в\
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ closest previous ;копър] -- Придвижва се до последния най-близък елемент\
в текущото множество
#[cout;#[ get ]] -- Прочита текущия елемент от базата
#[ close the base ]
4.1.5 Пътища в ЗЗЗ база
~~*...
Връща пътя до текущия елемент от множество на ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър указва дали функцията да запази текущата позиция.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ\
база
##[~~>(?;##[_base_];##[_processId_];копър] -- Придвижва се до първия най-\
близък елемент в текущото множество
#[cout;##[~~*...;##[_base_];##[_processId_];true]] -- Извежда пътя до текущ\
ия елемент
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис\
в ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
#[ closest next ;копър] -- Придвижва се до първия най-близък елемент в те\
кущото множество
#[cout;#[ get the base path ]] -- Извежда пътя до текущия елемент
#[ close the base ]
~~>...
Придвижва се до елемент по указания път в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е пътят до елемента.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ база
-- Придвижва се до елемент по указания път
#[==;true;##[~~>...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци\
];[
-- Извежда елемента, който е достигнат по указания път
#[cout;#[~~^.;##[_base_];##[_processId_]]]
];[
#[cout;Не успях да се придвижа по указания път.]
]
]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в ЗЗ\
З база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
-- Придвижва се до елемент по указания път
#[==;true;#[ move to the base path? ;00000003ZZZ00000009зеленчуци];[
-- Извежда елемента, който е достигнат по указания път
#[cout;#[ get ]]
];[
#[cout;Не успях да се придвижа по указания път.]
]
]
#[ close the base ]
#[ open the base for reading ]
-- Придвижва се до елемент по указания път
#[==;true;#[ move to the path? ;/зеленчуци];[
-- Извежда елемента, който е достигнат по указания път
#[cout;#[ get ]]
];[
#[cout;Не успях да се придвижа по указания път.]
]
]
#[ close the base ]
~~^...
Прочита елемент от указания път в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е пътят до елемента.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ база
-- Извежда елемента, който е достигнат по указания път
#[cout;##[~~^...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в ЗЗ\
З база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
-- Извежда елемента, който е достигнат по указания път
#[cout;#[ get from the base path ;00000003ZZZ00000009зеленчуци]]
#[ close the base ]
#[ open the base for reading ]
-- Извежда елемента, който е достигнат по указания път
#[cout;#[ get from the path ;/зеленчуци]]
#[ close the base ]
~~?.
Проверява за наличието на елемент в текущото множество от ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е елемента.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ база
-- Извежда true, ако елемента "зеленчуци" е в текущото
-- множество на базата и false в противен случай
#[cout;##[~~?.;##[_base_];##[_processId_];зеленчуци]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в ЗЗ\
З база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
-- Извежда true, ако елемента "зеленчуци" е в текущото
-- множество на базата и false в противен случай
#[cout;#[ check for ;зеленчуци]]
#[ close the base ]
~~?...
Проверява за наличието на път в текущото множество от ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е пътят в базата.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~^;##[_base_]]] -- Начало на процес за четене от ЗЗЗ база
-- Извежда true, ако елемента "моркови" е в подмножеството "зеленчуци"
-- от текущото множество на базата и false в противен случай
#[cout;##[~~?...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци000\
00007моркови]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в ЗЗ\
З база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for reading ]
-- Извежда true, ако елемента "моркови" е в подмножеството "зеленчуци"
-- от текущото множество на базата и false в противен случай
#[cout;#[ check the base path ;00000003ZZZ00000009зеленчуци00000007моркови]]
#[ close the base ]
#[ open the base for reading ]
-- Извежда true, ако елемента "моркови" е в подмножеството "зеленчуци"
-- от текущото множество на базата и false в противен случай
#[cout;#[ check the path ;/зеленчуци/моркови]]
#[ close the base ]
~~+...
Добавя елемент по указания път в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е пътят до елемента завършващ със самия елемент.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000009па\
тладжан]
#[cout;##[~~^...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци000\
00009патладжан]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the base path ;00000003ZZZ00000009зеленчуци00000009патладжан]
#[cout;#[ get from the base path ;00000003ZZZ00000009зеленчуци00000009патла\
джан]]
#[ close the base ]
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
#[cout;#[ get from the path ;/зеленчуци/патладжан]]
#[ close the base ]
4.1.6 Символи в ЗЗЗ база
~~>-@
Придвижва се до предходния символ на елемент в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000012па\
тладжан]
-- Придвижва се до предходния символ на елемент в ЗЗЗ база
#[cout;##[~~>-@;##[_base_];##[_processId_]]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
-- Придвижва се до предходния символ на елемент в ЗЗЗ база
#[cout;#[ previous symbol? ]]
#[ close the base ]
~~>+@
Придвижва се до следващия символ на елемент в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000012па\
тладжан]
-- Придвижва се до следващия символ на елемент в ЗЗЗ база
#[cout;##[~~>+@;##[_base_];##[_processId_]]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
-- Придвижва се до следващия символ на елемент в ЗЗЗ база
#[cout;#[ next symbol? ]]
#[ close the base ]
~~>^@
Придвижва се до горния символ на елемент в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000012па\
тладжан]
-- Придвижва се до горния символ на елемент в ЗЗЗ база
#[cout;##[~~>^@;##[_base_];##[_processId_]]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
-- Придвижва се до горния символ на елемент в ЗЗЗ база
#[cout;#[ up symbol? ]]
#[ close the base ]
~~>v@
Придвижва се до долния символ на елемент в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000012па\
тладжан]
-- Придвижва се до долния символ на елемент в ЗЗЗ база
#[cout;##[~~>v@;##[_base_];##[_processId_]]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
-- Придвижва се до долния символ на елемент в ЗЗЗ база
#[cout;#[ down symbol? ]]
#[ close the base ]
4.1.7 Преобразуване на пътища от ЗЗЗ база
~~///...
Преобразува път с разделители към път в ЗЗЗ база
Първият параметър е пътят с разделители. Вторият параметър е разделителят.
#[cout;
##[~~///...;/зеленчуци/патладжан;/]##[chr;10]
##[~~///...;/зеленчуци/моркови;/]
]
~~...///
Преобразува път в ЗЗЗ база към път с разделители
Първият параметър е разделителят. Вторият параметър е пътят.
#[cout;
##[~~...///;/;[00000003ZZZ00000004test]]##[chr;10]
##[~~...///;/;[0000000000000009зеленчуци00000009патладжан]]##[chr;10]
##[~~...///;/;[0000000000000009зеленчуци00000007моркови]]
]
4.1.8 Заключване и отключване на елементи за запис и четене от ЗЗЗ база
~~#v
Заключва елемент за запис (изтриване) в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000009па\
тладжан]
-- Заключва текущия елемент за запис в ЗЗЗ база
##[~~#v;##[_base_];##[_processId_]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
-- Заключва текущия елемент за запис в ЗЗЗ база
#[ lock for write ]
#[ close the base ]
~~$v
Отключва елемент за запис (изтриване) в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000009па\
тладжан]
-- Отключва текущия елемент за запис в ЗЗЗ база
##[~~$v;##[_base_];##[_processId_]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
-- Отключва текущия елемент за запис в ЗЗЗ база
#[ unlock for write ]
#[ close the base ]
~~#^
Заключва елемент за четене от ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000009па\
тладжан]
-- Заключва текущия елемент за четене от ЗЗЗ база
##[~~#^;##[_base_];##[_processId_]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
-- Заключва текущия елемент за четене от ЗЗЗ база
#[ lock for read ]
#[ close the base ]
~~$^
Отключва елемент за четене от ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
##[~~+...;##[_base_];##[_processId_];00000003ZZZ00000009зеленчуци00000009па\
тладжан]
-- Отключва текущия елемент за четене от ЗЗЗ база
##[~~$^;##[_base_];##[_processId_]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ open the base for writing ]
-- Добавя елемента "патладжан" в подмножеството "зеленчуци"
#[ add the path ;/зеленчуци/патладжан]
-- Отключва текущия елемент за четене от ЗЗЗ база
#[ unlock for read ]
#[ close the base ]
~~>./.
Премества множество от път към друг път в ЗЗЗ база
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса. Третият параметър е пътят до елемента завършващ със самия елемент. Четвъртият параметър е пътят където искаме да преместим елемента.
#[.=;_base_;docbases/zzzbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за четене от ЗЗ\
З база
-- добавям нов елемент "растения"
#[~~+.;##[_base_];##[_processId_];растения]
-- прехвърлям множеството "зеленчуци" в "растения"
##[~~>./.;##[_base_];##[_processId_];
##[~~///...;/зеленчуци;/];
##[~~///...;/растения;/]
]
-- прехвърлям множеството "плодове" в "растения"
##[~~>./.;##[_base_];##[_processId_];
##[~~///...;/плодове;/];
##[~~///...;/растения;/]
]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_base_];;/]
] -- Извежда базата като обикновен текст
#[ open the base for writing ]
-- добавям нов елемент "растения"
#[ add ;растения]
-- прехвърлям множеството "зеленчуци" в "растения"
#[ move the base path ;
0000000000000009зеленчуци;
0000000000000008растения
]
-- прехвърлям множеството "плодове" в "растения"
#[ move the base path ;
0000000000000007плодове;
0000000000000008растения
]
#[ close the base ]
#[ get the base as a simple text ]
#[ open the base for writing ]
-- добавям нов елемент "растения"
#[ add ;растения]
-- прехвърлям множеството "зеленчуци" в "растения"
#[ move the path ;
/зеленчуци;
/растения
]
-- прехвърлям множеството "плодове" в "растения"
#[ move the path ;
/плодове;
/растения
]
#[ close the base ]
#[ get the base as a simple text ]
4.1.9 Команди за ограничаване на достъпа до база
~~u+
Добавя потребител с парола и режим за достъп до текущата база и при успех връща true
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса за запис. Третият параметър е името на потребителя. Четвъртият параметър е паролата на потребителя. Петият параметър е режима за достъп на потребителя до текущата база и има една от следните стойности: admin - има право да променя и добавя потребители, да записва и чете; write - има право да записва и чете; read - има право да чете; всички останали стойности ограничават достъпа на потребителя до базата.
Желателно е да добавите поне един потребител с режим на достъп admin, ако не го добавите няма да можете да променяте информацията за потребителите след края на текущия процес за запис в базата! Ако имате поне един потребител с режим write ще можете да изтриете служебното множество с потребителите на базата. Добавянето на потребители само с режим на достъп read е равносилно на заключване на базата за запис! Добавянето на потребители само с режим на достъп различен от admin, write, read е равносилно на заключване на базата за четене и запис. Така че преди да заключите база по такъв начин е препоръчително да й направите копие.
#[.=;_base_;docbases/zzzprotectedbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[.=;_processId_;#[~~v;##[_base_];10000]] -- Начало на процес за запис в ЗЗЗ\
база
##[~~u+;##[_base_];##[_processId_];[test];[1234];admin]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[.=;_processId_;#[~~v;##[_base_];10000;[test];[1234]]] -- Начало на процес \
за запис в ЗЗЗ база
##[~~+.;##[_base_];##[_processId_];елемент 1]
##[~~+.;##[_base_];##[_processId_];елемент 2]
##[~~+.;##[_base_];##[_processId_];елемент 3]
#[cout;
#[==;true;##[~~>(.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]] ##[chr;10]
#[==;true;##[~~>+.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]] ##[chr;10]
#[==;true;##[~~>+.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]]
]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ base ;docbases/zzzprotectedbase]
#[ open the base for writing ]
#[ add the user ;test;1234;admin]
#[ close the base ]
#[ user and password ;test;1234]
#[ open the base for writing ]
#[ add ;елемент 1]#[ add ;елемент 2]#[ add ;елемент 3]
#[cout;
#[ first ] #[ get ]#[ new line ]
#[ next ] #[ get ]#[ new line ]
#[ next ] #[ get ]
]
#[ close the base ]
~~u/
Променя името или паролата на потребител и при успех връща true
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса за запис. Третият параметър е текущото име на потребителя. Четвъртият параметър е текущата парола на потребителя. Петият параметър е новото име на потребителя. Шестият параметър е новата парола на потребителя.
#[.=;_base_;docbases/zzzprotectedbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[.=;_processId_;#[~~v;##[_base_];10000;[test];[1234]]] -- Начало на процес \
за запис в ЗЗЗ база
##[~~u+;##[_base_];##[_processId_];[user2];[123456];admin]
##[~~u/;##[_base_];##[_processId_];[user2];[123456];[user3];[654321]]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[.=;_processId_;#[~~v;##[_base_];10000;[user3];[654321]]] -- Начало на проц\
ес за запис в ЗЗЗ база
##[~~+.;##[_base_];##[_processId_];елемент 4]
#[cout;
#[==;true;##[~~>(.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]] ##[chr;10]
#[==;true;##[~~>+.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]] ##[chr;10]
#[==;true;##[~~>+.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]] ##[chr;10]
#[==;true;##[~~>+.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]]
]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ base ;docbases/zzzprotectedbase]
#[ user and password ;test;1234]
#[ open the base for writing. ;[
#[ add the user ;user2;123456;admin]
#[ change the user ;user2;123456;user3;654321]
]]
#[ user and password ;user3;654321]
#[ open the base for writing. ;[
#[ add ;елемент 4]
#[cout;
#[ first ] #[ get ]#[ new line ]
#[ next ] #[ get ]#[ new line ]
#[ next ] #[ get ]#[ new line ]
#[ next ] #[ get ]
]
]]
~~u-
Изтрива потребител и при успех връща true
Първият параметър е името на базата. Вторият параметър е номерът/идентификаторът на процеса за запис. Третият параметър е текущото име на потребителя. Четвъртият параметър е текущата парола на потребителя.
#[.=;_base_;docbases/zzzprotectedbase]
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[.=;_processId_;#[~~v;##[_base_];10000;[test];[1234]]] -- Начало на процес \
за запис в ЗЗЗ база
##[~~u-;##[_base_];##[_processId_];[user3];[654321];admin]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[~~+;##[_base_]] -- Активира връзка към ЗЗЗ база
#[.=;_processId_;#[~~v;##[_base_];10000;[user3];[654321]]] -- Начало на проц\
ес за запис в ЗЗЗ база
##[~~+.;##[_base_];##[_processId_];елемент 4]
#[cout;
#[==;true;##[~~>(.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]] ##[chr;10]
#[==;true;##[~~>+.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]] ##[chr;10]
#[==;true;##[~~>+.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]] ##[chr;10]
#[==;true;##[~~>+.;##[_base_];##[_processId_]];;]
##[~~^.;##[_base_];##[_processId_]]
]
#[~~.;##[_base_];##[_processId_]] -- Край на процес за четене или запис в \
ЗЗЗ база
#[~~-;##[_base_]] -- Освобождава връзка към ЗЗЗ база
#[ base ;docbases/zzzprotectedbase]
#[ user and password ;test;1234]#[>=n;#[ open the base for writing? ];0;[
#[ remove the user ;user3;654321;admin]
#[ close the base ]
];]
#[ user and password ;user3;654321]#[>=n;#[ open the base for writing? ];0;[
#[ add ;елемент 4]
#[cout;
#[ first ] #[ get ]#[ new line ]
#[ next ] #[ get ]#[ new line ]
#[ next ] #[ get ]#[ new line ]
#[ next ] #[ get ]
]
#[ close the base ]
];]