Tad, нет я ее через sqlitebrowser создавал.
п.с. сейчас потестирую
------------ Дoбавленo в 17.02:
Gunnman писал(а):
Чуть-чуть не так.
При попытке "открытия", если БД с таким именем нет, то она создаётся и "открывается".
опять же если при компиляции это было указано,
не создаст файл БД:
sqlite3_open_v2(PChar(CodePage1ToCodePage2(ReadString(_Data,_data_FileName, _prop_FileName), CP_ACP, CP_UTF8)), id,SQLITE_OPEN_READWRITE+SQLITE_OPEN_NOMUTEX,nil);
создаст:
sqlite3_open_v2(PChar(CodePage1ToCodePage2(ReadString(_Data,_data_FileName, _prop_FileName), CP_ACP, CP_UTF8)), id,SQLITE_OPEN_CREATE+SQLITE_OPEN_READWRITE+SQLITE_OPEN_NOMUTEX,nil);
------------ Дoбавленo в 17.08:
Add(SQLite_DB,6356802,448,119)
{
FileName="test.db"
link(onOpen,9267624:doEvent1,[])
}
Add(SQLite_Query,9084959,448,203)
{
link(onError,9152759:doText,[])
link(dbHandle,6356802:dbHandle,[])
}
Add(Label,9152759,532,217)
{
Left=109
Top=14
Width=156
}
Add(Button,1901559,294,126)
{
Left=14
Top=38
link(onClick,6356802:doOpenN,[])
}
Add(FormatStr,3837801,371,203)
{
DataCount=1
Mask="insert into test values (%1,'%1');"
link(onFString,709462:doWork2,[])
}
Add(DoData,1871601,385,154)
{
Data=String(BEGIN TRANSACTION;)
link(onEventData,8535308:doWork1,[(438,160)])
}
Add(For,5754753,315,203)
{
End=200000
link(onEvent,3837801:doString,[])
link(onStop,5439098:doData,[(359,216)(359,251)])
}
Add(Hub,9267624,497,119)
{
link(onEvent1,1871601:doData,[(523,125)(523,143)(373,143)(373,160)])
link(onEvent2,5754753:doFor,[(523,132)(523,170)(303,170)(303,209)])
}
Add(HubEx,8535308,434,203)
{
link(onEvent,9084959:doQuery,[])
}
Add(DoData,5439098,371,245)
{
Data=String(COMMIT;)
link(onEventData,709462:doWork3,[(424,251)])
}
Add(HubEx,709462,420,203)
{
link(onEvent,8535308:doWork2,[])
}
открывается блокнотом)))
------------ Дoбавленo в 17.09:
Блокировки в SQLITE как я понял не на уровне жесткого диска i\o а на уровне буфера ОС, блокировка флагами.
------------ Дoбавленo в 17.13:
Gunnman писал(а):
Это да.
Но с такими параметрами
page_count 46
page_size 1024
это черепаха.
ну я ж учусь))) не все параметры SQLITE знаю, пересоберу библиотеку) я пока пытаюсь понять нафига мне был нужен NOMUTEX, если FULLMUTEX (Serialized режим) - его хватает за глаза...теперь ради спортивного интереса будут пробовать собрать рабочую схему с NOMUTEX...чтобы понять в каких случаях она может понадобится.
На habrahabr и ресурсах типа stackoverflow пишут sqlite3_open не используется в серьезных проектах, мне конечно до них еще далеко, но все же данная БД вызвала огромный интерес!