Вверх ↑
Этот топик читают: Гость
Ответов: 125
Рейтинг: 6
#1: 2017-07-04 22:52:04 ЛС | профиль | цитата
Приветствую, форумчане!
Каким образом можно организовать БД, чтобы выдержала относительно большое количество данных?
Подробное описание проблемы:
Программа, периодически записывает в INI файл, сейчас столкнулся с проблемой, что периодически INI файл слетает(в начале файла непонятные символы и вес сильно уменьшается). Количество строк сейчас около 2'000, планируется до 5'000, длина строки до 50 символов, планируется до 150 символов.
Как я начитался, что INI файлы не предназначены для записи большого объёма данных.
Пробовал переместить на MT-Таблицы, в какой-то момент начинает резать текст в таблицах.
Приму к сведению любые варианты, желательно без использования дополнительного ПО(прим. MySQL).
Мне нужна Ваша идея
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 817
Рейтинг: 52
#2: 2017-07-05 09:09:02 ЛС | профиль | цитата
mrumbert писал(а):
Каким образом можно организовать БД

Сейчас придет Tad и за такие слова выскажет все свои знания (это я без шуток, мне интересно, что он скажет)
А вообще, как я понимаю из написанного
mrumbert писал(а):
Количество строк сейчас около 2'000

у тебя база такого вида
ID;Name
0;строка_1
1;строка_2
....
n;строка_n
Если это так, то больших проблем не будет - читай http://forum.hiasm.com/topic/7573

Но еще немаловажно понимать, доступ к БД у тебя планируется многопользовательский?
карма: 1

0
Ответов: 8887
Рейтинг: 823
#3: 2017-07-05 09:33:08 ЛС | профиль | цитата
mrumbert, пока Tad отдыхает, выложите для ясности имена таблиц и имена колонок, ему будет легче
5000 строк -- совсем не много
карма: 19

0
Ответов: 125
Рейтинг: 6
#4: 2017-07-05 10:50:38 ЛС | профиль | цитата
-= DriveR =- писал(а):
у тебя база такого вида
ID;Name
0;строка_1
1;строка_2

Не совсем, сейчас файл вида:
[1]
12345678910=Абвгдеёжзийклмнопрстуфхцчшщ;Abcdefg&1112131415#12:34:56|12.01.2017
...
[2]
12345678910=Абвгдеёжзийклмнопрстуфхцчшщ;Abcdefg&1112131415#12:34:56|12.01.2017
...
[4]
...
Несколько секций использовано исключительно потому, что после некоторого количество строк, при полном чтении секции обрубает строки.
Есть второй файл, имеющий несколько другую структуру,но я его периодически очищаю, поэтому с ним проблем не возникает:
[01.02.2010]
113024=Абвгдеёжзийклмнопрст;01
...
-= DriveR =- писал(а):
Но еще немаловажно понимать, доступ к БД у тебя планируется многопользовательский?

Только одна программа использует файл, но бывает что читает и по несколько строк сразу.
-= DriveR =- писал(а):
читай http://forum.hiasm.com/topic/7573

C SQLite не связывался, т.к. без примеров мне сложно понять как оно работает, почти все элементы только на примерах и изучал, да и от MySQL остался отпечаток неприятный) Но поизучаю пока, может и так принцип догоню)

Редактировалось 2 раз(а), последний 2017-07-05 11:26:56
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#5: 2017-07-05 13:15:15 ЛС | профиль | цитата
-= DriveR =- писал(а):
Сейчас придет
Да я ещё вчера был, но... нихрена не понял.
mrumbert писал(а):
Не совсем, сейчас файл вида
Не надо "такого вида". Просто выложи кусок твоего ini-файла.
mrumbert писал(а):
C SQLite не связывался
А зря.
mrumbert писал(а):
от MySQL остался отпечаток неприятный
MySQL - это популярный сервер баз данных
А если
mrumbert писал(а):
периодически INI файл слетает
и
mrumbert писал(а):
Пробовал переместить на MT-Таблицы, в какой-то момент начинает резать текст в таблицах.
то
Неладно что-то в датском королевстве


Редактировалось 2 раз(а), последний 2017-07-05 13:34:00
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 952
Рейтинг: 4
#6: 2017-07-05 22:46:22 ЛС | профиль | цитата
У человека не БД, а просто текстовый файл постоянно пополняемый новыми строками.
Все таки рекомендую запустить пример SQLite из папки с программой и посмотреть что там да как.
Иначе это баловство, и если планы далекоидущие, то путь с текстовым файлом - путь в никуда.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#7: 2017-07-05 22:58:00 ЛС | профиль | цитата
user_asm писал(а):
У человека не БД, а просто текстовый файл постоянно пополняемый новыми строками.
И откуда это видно ?
mrumbert писал(а):
Программа, периодически записывает в INI файл
Как Вы всё сразу понимаете ?
Я, например, до сих пор не могу ничего понять.
Мне даже кажется, что проблема описана не на русском языке.

Редактировалось 2 раз(а), последний 2017-07-05 23:25:42
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 1925
Рейтинг: 172
#8: 2017-07-05 23:23:52 ЛС | профиль | цитата
mrumbert писал(а):
Не совсем, сейчас файл вида:
[1]
12345678910=Абвгдеёжзийклмнопрстуфхцчшщ;Abcdefg&1112131415#12:34:5612.01.2017
...
[2]
12345678910=Абвгдеёжзийклмнопрстуфхцчшщ;Abcdefg&1112131415#12:34:56|12.01.2017
...
[4]
...


Странный формат данных. Если это строки наподобие ФИО;дата рождения;пол;адрес, то можно либо БД, либо список строк (а визуальные MT-таблицы и вовсе ни к чему, если данные не нужно отображать).


Add(StrList,10017647,350,266)
{
}
карма: 9
0
Ответов: 952
Рейтинг: 4
#9: 2017-07-05 23:46:28 ЛС | профиль | цитата
Tad писал(а):
И откуда это видно ?

Сам такой был в начале пути. Именно с текстовика и начинал. Благо осмелился перейти на SQL и с вашей помощью и советами довольно успешно. Еще раз спасибо за науку.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#10: 2017-07-07 12:06:30 ЛС | профиль | цитата
user_asm,
Ян Френкель писал(а):
Ну что тебе сказать про Сахалин ?
Человек применяет ini-файл не зная его формата.
Не зная , что ";" (а в некоторых и "#") это признак комментария.
Поэтому и "обрезает".
А почитать - лень.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 125
Рейтинг: 6
#11: 2017-08-02 00:37:09 ЛС | профиль | цитата
Прошу прощения за отсутствие ответа, провайдер динозавр, до сих пор интернет по карточкам, только сегодня домой приехал)
Tad писал(а):
Не зная , что ";" (а в некоторых и "#") это признак комментария.
Поэтому и "обрезает".

Обрезало на середине цифр как правило, а если поставить новую секцию, то нормально воспринимало.
Вроде чуть разобрался с SQLite, как интернет появился и благодаря примерам)
Но несколько вопросов осталось:
1.Насколько я понял из описания, что SQLite_QueryScalar и SQLite_Query почти не отличаются, но у меня при поиске значений в первом выводится только одно значение, а во втором целая строка, так и должно быть?
2.Прочитал, что добавив в начало запроса:"sqlite_query($dbhandle, 'BEGIN;');" и в конец:"sqlite_query($dbhandle, 'COMMIT;');", можно ускорить скорость записи на диск, но у меня не восприняло эту команду.
3.При отправке запроса на запись друг за другом, после прочтения из файла, начинает писать, что БД занята, сделал ожидание очереди, но мне кажется, что что-то неправильно я сделал, прошу указать на ошибки)
4.Достаточно ли библиотеки из корня HiAsm или надо скачивать другие?
Add(MultiElementEx,16543071,399,217){
}
BEGIN_SDK
Add(EditMultiEx,3717637,21,21)
{
WorkCount=#17:OpenDB=Открыть БД|27:AddStringDB=Добавление в БД|14:SearthID=Поиск|18:CloseBD=Закрыть БД|26:CreateTAB=Создание таблицы|
EventCount=#25:Exit=Выход результатов БД|33:OnCreate=Успешное создание записи|20:onErrors=При ошибках|
Width=405
Height=284
link(OpenDB,15654271:doWork1,[])
link(AddStringDB,15654271:doWork2,[])
link(SearthID,15654271:doWork3,[])
link(CloseBD,15654271:doWork4,[])
link(CreateTAB,15654271:doWork5,[])
}
Add(SQLite_DB,7864558,175,35)
{
FileName="1.txt"
WaitClose=0
}
Add(FormatStr,2984542,112,119)
{
DataCount=1
Mask="select * from tab where id ='%1';"
link(onFString,3525824:doQuery,[])
}
Add(MT_String,11529730,364,21)
{
link(onResult,3717637:Exit,[])
}
Add(MultiElement,7767787,154,210)
{
link(onEvent1,3717637:OnCreate,[(402,216)(402,34)])
link(onEvent2,14687587:doWork2,[])
link(Data1,2170215:Var1,[(160,110)])
}
BEGIN_SDK
Add(EditMulti,16561761,14,7)
{
EventCount=2
WorkCount=1
DataCount=1
Width=517
Height=305
link(doWork1,3769667:doValue,[(42,13)(42,76)])
}
Add(Memory,3769667,56,70)
{
link(onData,4312568:doWork1,[])
}
Add(DoData,847264,329,70)
{
link(onEventData,16561761:onEvent1,[(505,76)(505,13)])
}
Add(If_else,7380279,245,70)
{
link(onTrue,847264:doData,[])
link(onFalse,5742759:doData,[])
link(Op2,3769667:Value,[(258,52)(46,52)(46,116)(62,116)])
}
Add(MT_String,4806652,203,70)
{
Delimeter=","
link(onResult,7380279:doCompare,[])
}
Add(MultiElement,4312568,98,70)
{
link(onEvent1,15544433:doQuery,[])
}
BEGIN_SDK
Add(EditMulti,5855565,21,21)
{
EventCount=1
WorkCount=1
link(doWork1,6306394:doSplit,[(59,27)(59,97)])
}
Add(MultiStrPart,6306394,91,91)
{
Char=","
Count=6
link(onSplit,12322686:doString,[(141,97)(141,133)(76,133)(76,146)])
}
Add(FormatStr,12322686,91,140)
{
DataCount=6
Mask="INSERT OR REPLACE INTO tab VALUES('%1','%2','%3','%4','%5',%6);\r\nselect * from tab where id ='%1';"
link(onFString,5855565:onEvent1,[(225,146)(225,27)])
link(Str1,6306394:Part1,[])
link(Str2,6306394:Part2,[])
link(Str3,6306394:Part3,[])
link(Str4,6306394:Part4,[])
link(Str5,6306394:Part5,[])
link(Str6,6306394:Part6,[])
}
END_SDK
Add(DoData,5742759,287,77)
{
Data=String(NO)
link(onEventData,173642:doWork3,[(425,83)])
}
Add(HubEx,173642,421,14)
{
link(onEvent,16561761:onEvent2,[])
}
Add(SQLite_Query,15544433,140,70)
{
link(onQuery,4806652:doStr,[])
link(onError,173642:doWork2,[(186,90)(186,20)])
link(dbHandle,16561761:Data1,[(146,60)(20,60)])
}
END_SDK
Add(GetDataEx,2170215,175,105)
{
link(Data,11227215:Var2,[])
}
Add(FormatStr,6070640,217,91)
{
DataCount=1
Mask="CREATE TABLE %1 (id PRIMARY KEY,type,name1 NOT NULL,name2,coins NOT NULL,kol);"
link(onFString,584737:doExec,[])
}
Add(GetDataEx,11227215,175,77)
{
link(Data,7864558:dbHandle,[])
}
Add(FormatStr,15914922,343,217)
{
Mask="%1 (%2)"
link(onFString,3717637:onErrors,[(414,223)(414,41)])
link(Str2,15654271:Var1,[(356,162)(41,162)])
}
Add(HubEx,14687587,210,217)
{
link(onEvent,13004484:doWork2,[(216,223)])
}
Add(HubEx,13004484,308,217)
{
link(onEvent,15914922:doString,[])
}
Add(MultiElement,15654271,35,21)
{
link(onEvent1,7864558:doOpen,[(118,27)(118,41)])
link(onEvent2,7767787:doWork1,[(107,34)(107,216)])
link(onEvent3,2984542:doString,[(86,41)(86,125)])
link(onEvent4,7864558:doClose,[])
link(onEvent5,6070640:doString,[(142,55)(142,97)])
}
BEGIN_SDK
Add(EditMulti,13055467,28,21)
{
EventCount=5
WorkCount=5
VarCount=1
Width=132
Height=39
link(doWork1,886101:doWork1,[])
link(doWork2,886101:doWork2,[])
link(doWork3,886101:doWork3,[])
link(doWork4,886101:doWork4,[])
link(doWork5,886101:doWork5,[])
link(Var1,9326235:Var1,[(34,56)(83,56)])
}
Add(MultiElement,9326235,77,21)
{
link(onEvent1,13182330:doEvent,[])
}
BEGIN_SDK
Add(EditMulti,15625639,21,21)
{
EventCount=1
WorkCount=1
VarCount=1
Width=314
Height=249
link(doWork1,16085816:doPush,[(70,27)(70,125)])
link(Var1,7487074:GetData,[(27,252)(188,252)])
}
Add(Timer,13122356,70,126)
{
Interval=0
Enable=1
OverCall=1
link(onTimer,16085816:doPop,[])
}
Add(MT_Stack,16085816,126,119)
{
Point(onEmpty)
link(onPush,13122356:doTimer,[(163,125)(163,111)(62,111)(62,132)])
link(onPop,8888484:doValue,[])
link(onEmpty,13122356:doStop,[(170,139)(170,163)(60,163)(60,139)])
}
Add(MT_Memory,8888484,182,126)
{
link(onData,15625639:onEvent1,[(243,132)(243,27)])
}
Add(EventFromData,7487074,182,203)
{
link(onEvent,11700298:doStr,[])
}
Add(MT_String,11700298,224,203)
{
link(onResult,5952472:doString,[])
link(Str1,3186609:Var2,[])
}
Add(FormatStr,5952472,266,203)
{
Mask="%1:%2"
link(onFString,7487074:doData,[(310,209)(310,197)(170,197)(170,209)])
link(Str1,3186609:Var3,[(272,180)])
}
Add(GetDataEx,3186609,224,175)
{
Angle=3
link(Data,8888484:Value,[(188,180)])
}
END_SDK
Add(MT_ChanelToIndex,886101,35,21)
{
Count=5
link(onIndex,9326235:doWork1,[])
}
Add(MT_IndexToChanel,13182330,119,21)
{
Count=5
link(onEvent1,13055467:onEvent1,[])
link(onEvent2,13055467:onEvent2,[])
link(onEvent3,13055467:onEvent3,[])
link(onEvent4,13055467:onEvent4,[])
link(onEvent5,13055467:onEvent5,[])
}
END_SDK
Add(SQLite_Exec,584737,266,91)
{
link(onError,13004484:doWork1,[(312,97)])
link(dbHandle,11227215:Var3,[(272,82)])
}
Add(SQLite_Query,3525824,175,119)
{
link(onQuery,11529730:doStr,[(326,125)(326,27)])
link(onError,14687587:doWork1,[(214,139)])
link(dbHandle,2170215:Var2,[])
}
END_SDK

Редактировалось 1 раз(а), последний 2017-08-02 11:20:05
карма: 0

0
Ответов: 497
Рейтинг: 16
#12: 2017-08-02 01:16:08 ЛС | профиль | цитата
фкмшкмкфмк
[сode]

[/сode]

--- Добавлено в 2017-08-02 01:17:48


Add(MultiElementEx,16543071,399,217) 
{
}
BEGIN_SDK
Add(EditMultiEx,3717637,21,21)
{
WorkCount=#17:OpenDB=Открыть БД|27:AddStringDB=Добавление в БД|14:SearthID=Поиск|18:CloseBD=Закрыть БД|26:CreateTAB=Создание таблицы|
EventCount=#25:Exit=Выход результатов БД|33:OnCreate=Успешное создание записи|20nErrors=При ошибках|
Width=405
Height=284
link(OpenDB,15654271:doWork1,[])
link(AddStringDB,15654271:doWork2,[])
link(SearthID,15654271:doWork3,[])
link(CloseBD,15654271:doWork4,[])
link(CreateTAB,15654271:doWork5,[])
}
Add(SQLite_DB,7864558,175,35)
{
FileName="1.txt"
WaitClose=0
}
Add(FormatStr,2984542,112,119)
{
DataCount=1
Mask="select * from tab where id ='%1';"
link(onFString,3525824:doQuery,[])
}
Add(MT_String,11529730,364,21)
{
link(onResult,3717637:Exit,[])
}
Add(MultiElement,7767787,154,210)
{
link(onEvent1,3717637:OnCreate,[(402,216)(402,34)])
link(onEvent2,14687587:doWork2,[])
link(Data1,2170215:Var1,[(160,110)])
}
BEGIN_SDK
Add(EditMulti,16561761,14,7)
{
EventCount=2
WorkCount=1
DataCount=1
Width=517
Height=305
link(doWork1,3769667:doValue,[(42,13)(42,76)])
}
Add(Memory,3769667,56,70)
{
link(onData,4312568:doWork1,[])
}
Add(DoData,847264,329,70)
{
link(onEventData,16561761nEvent1,[(505,76)(505,13)])
}
Add(If_else,7380279,245,70)
{
link(onTrue,847264:doData,[])
link(onFalse,5742759:doData,[])
link(Op2,3769667:Value,[(258,52)(46,52)(46,116)(62,116)])
}
Add(MT_String,4806652,203,70)
{
Delimeter=","
link(onResult,7380279:doCompare,[])
}
Add(MultiElement,4312568,98,70)
{
link(onEvent1,15544433:doQuery,[])
}
BEGIN_SDK
Add(EditMulti,5855565,21,21)
{
EventCount=1
WorkCount=1
link(doWork1,6306394:doSplit,[(59,27)(59,97)])
}
Add(MultiStrPart,6306394,91,91)
{
Char=","
Count=6
link(onSplit,12322686:doString,[(141,97)(141,133)(76,133)(76,146)])
}
Add(FormatStr,12322686,91,140)
{
DataCount=6
Mask="INSERT OR REPLACE INTO tab VALUES('%1','%2','%3','%4','%5',%6);\r\nselect * from tab where id ='%1';"
link(onFString,5855565nEvent1,[(225,146)(225,27)])
link(Str1,6306394art1,[])
link(Str2,6306394art2,[])
link(Str3,6306394art3,[])
link(Str4,6306394art4,[])
link(Str5,6306394art5,[])
link(Str6,6306394art6,[])
}
END_SDK
Add(DoData,5742759,287,77)
{
Data=String(NO)
link(onEventData,173642:doWork3,[(425,83)])
}
Add(HubEx,173642,421,14)
{
link(onEvent,16561761nEvent2,[])
}
Add(SQLite_Query,15544433,140,70)
{
link(onQuery,4806652:doStr,[])
link(onError,173642:doWork2,[(186,90)(186,20)])
link(dbHandle,16561761ata1,[(146,60)(20,60)])
}
END_SDK
Add(GetDataEx,2170215,175,105)
{
link(Data,11227215:Var2,[])
}
Add(FormatStr,6070640,217,91)
{
DataCount=1
Mask="CREATE TABLE %1 (id PRIMARY KEY,type,name1 NOT NULL,name2,coins NOT NULL,kol);"
link(onFString,584737:doExec,[])
}
Add(GetDataEx,11227215,175,77)
{
link(Data,7864558:dbHandle,[])
}
Add(FormatStr,15914922,343,217)
{
Mask="%1 (%2)"
link(onFString,3717637nErrors,[(414,223)(414,41)])
link(Str2,15654271:Var1,[(356,162)(41,162)])
}
Add(HubEx,14687587,210,217)
{
link(onEvent,13004484:doWork2,[(216,223)])
}
Add(HubEx,13004484,308,217)
{
link(onEvent,15914922:doString,[])
}
Add(MultiElement,15654271,35,21)
{
link(onEvent1,7864558:doOpen,[(118,27)(118,41)])
link(onEvent2,7767787:doWork1,[(107,34)(107,216)])
link(onEvent3,2984542:doString,[(86,41)(86,125)])
link(onEvent4,7864558:doClose,[])
link(onEvent5,6070640:doString,[(142,55)(142,97)])
}
BEGIN_SDK
Add(EditMulti,13055467,28,21)
{
EventCount=5
WorkCount=5
VarCount=1
Width=132
Height=39
link(doWork1,886101:doWork1,[])
link(doWork2,886101:doWork2,[])
link(doWork3,886101:doWork3,[])
link(doWork4,886101:doWork4,[])
link(doWork5,886101:doWork5,[])
link(Var1,9326235:Var1,[(34,56)(83,56)])
}
Add(MultiElement,9326235,77,21)
{
link(onEvent1,13182330:doEvent,[])
}
BEGIN_SDK
Add(EditMulti,15625639,21,21)
{
EventCount=1
WorkCount=1
VarCount=1
Width=314
Height=249
link(doWork1,16085816:doPush,[(70,27)(70,125)])
link(Var1,7487074:GetData,[(27,252)(188,252)])
}
Add(Timer,13122356,70,126)
{
Interval=0
Enable=1
OverCall=1
link(onTimer,16085816:doPop,[])
}
Add(MT_Stack,16085816,126,119)
{
Point(onEmpty)
link(onPush,13122356:doTimer,[(163,125)(163,111)(62,111)(62,132)])
link(onPop,8888484:doValue,[])
link(onEmpty,13122356:doStop,[(170,139)(170,163)(60,163)(60,139)])
}
Add(MT_Memory,8888484,182,126)
{
link(onData,15625639nEvent1,[(243,132)(243,27)])
}
Add(EventFromData,7487074,182,203)
{
link(onEvent,11700298:doStr,[])
}
Add(MT_String,11700298,224,203)
{
link(onResult,5952472:doString,[])
link(Str1,3186609:Var2,[])
}
Add(FormatStr,5952472,266,203)
{
Mask="%1:%2"
link(onFString,7487074:doData,[(310,209)(310,197)(170,197)(170,209)])
link(Str1,3186609:Var3,[(272,180)])
}
Add(GetDataEx,3186609,224,175)
{
Angle=3
link(Data,8888484:Value,[(188,180)])
}
END_SDK
Add(MT_ChanelToIndex,886101,35,21)
{
Count=5
link(onIndex,9326235:doWork1,[])
}
Add(MT_IndexToChanel,13182330,119,21)
{
Count=5
link(onEvent1,13055467nEvent1,[])
link(onEvent2,13055467nEvent2,[])
link(onEvent3,13055467nEvent3,[])
link(onEvent4,13055467nEvent4,[])
link(onEvent5,13055467nEvent5,[])
}
END_SDK
Add(SQLite_Exec,584737,266,91)
{
link(onError,13004484:doWork1,[(312,97)])
link(dbHandle,11227215:Var3,[(272,82)])
}
Add(SQLite_Query,3525824,175,119)
{
link(onQuery,11529730:doStr,[(326,125)(326,27)])
link(onError,14687587:doWork1,[(214,139)])
link(dbHandle,2170215:Var2,[])
}
END_SDK

Редактировалось 1 раз(а), последний 2017-08-02 01:17:48
карма: 1
        ]  
0
Ответов: 16884
Рейтинг: 1239
#13: 2017-08-02 08:37:54 ЛС | профиль | цитата
mrumbert писал(а):
Но несколько вопросов осталось:
Ответы:
1. Так и должно быть.
2. Про Begin - Commit читай http://www.sqlite.org/
3. Чтобы указать на ошибки, нужно видеть схему. А схему нужно выкладывать в теги CODE.
4. Достаточно.

Редактировалось 1 раз(а), последний 2017-08-02 08:43:50
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 125
Рейтинг: 6
#14: 2017-08-02 11:25:10 ЛС | профиль | цитата
Tad писал(а):
А схему нужно выкладывать в теги CODE.

Исправил
И можно ли заставить БД всегда отвечать? К примеру, если строка не найдена, чтобы хоть как-то отреагировал) А то, периодически ничего не возвращает при поиске по БД, хотя я точно уверен, что это значение есть, а с 5-го раза находит вдруг.

Редактировалось 1 раз(а), последний 2017-08-02 11:51:02
карма: 0

0
Ответов: 497
Рейтинг: 16
#15: 2017-08-02 13:01:41 ЛС | профиль | цитата
mrumbert писал(а):
заставить БД всегда отвечать

кастилик


Add(SQLite_Query,8300687,413,392)
{
link(onQuery,11702777:doValue,[(467,398)(467,370)])
}
Add(Memory,11702777,490,364)
{
Default=String()
}
Add(Hub,12977725,350,371)
{
OutCount=3
link(onEvent1,11702777:doClear,[])
link(onEvent2,8300687:doQuery,[(388,384)(388,398)])
link(onEvent3,130373:doCompare,[(427,391)(427,419)])
}
Add(If_else,130373,490,413)
{
Op2=String()
link(onTrue,1466305:doMessage,[])
link(onFalse,13853103:doMessage,[(586,426)(586,461)])
link(Op1,11702777:Value,[])
}
Add(Message,1466305,644,413)
{
Message="Null"
}
Add(Message,13853103,644,455)
{
Message="not Null"
}

карма: 1
        ]  
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)