Что нового

Показать в GUI картинку из SQLite

Latoid

Знающий
Сообщения
95
Репутация
11
Здравствуйте.
Есть такой скрипт:
Код:
#include <SQLite.au3>
Global $DataBase = @ScriptDir & "\countries.db"

_OpenDataBase($DataBase)
_CreateCountriesTable ()

GUICreate("Test")

; Получить картинку из БД и отобразить

GUISetState()

While GUIGetMsg()<>-3
WEnd

_ExitProg ()

Func _CreateCountriesTable ()
	_GetInfoFromDataBase ("BEGIN;")
	_GetInfoFromDataBase ("CREATE TABLE IF NOT EXISTS countries (id INTEGER PRIMARY KEY AUTOINCREMENT, rus TEXT NOT NULL, eng TEXT NOT NULL, ISO_4217_id TINYTEXT NOT NULL DEFAULT 0, ISO_3166_1_alpha_2 TINYTEXT NOT NULL DEFAULT '', ISO_3166_1_alpha_3 TINYTEXT NOT NULL DEFAULT '', ISO_3166_1_digital TINYTEXT NOT NULL DEFAULT '', flag_height INTEGER NOT NULL DEFAULT 0, flag_width INTEGER NOT NULL DEFAULT 0, flag BLOB NOT NULL DEFAULT '');")
	_GetInfoFromDataBase ("INSERT INTO countries (rus, eng, ISO_4217_id, ISO_3166_1_alpha_2, ISO_3166_1_alpha_3, ISO_3166_1_digital, flag_height, flag_width, flag) VALUES ('Австралия', 'Australia', '036', 'AU', 'AUS', '036', 22, 44, x'FFD8FFE000104A46494600010101006000600000FFE1003A4578696600004D4D002A00000008000351100001000000010100000051110004000000010000000051120004000000010000000000000000FFDB004300100B0C0E0C0A100E0D0E1211101318281A181616183123251D283A333D3C3933383740485C4E404457453738506D51575F626768673E4D71797064785C656763FFDB0043011112121815182F1A1A2F634238426363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363FFC00011080016002C03012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F006C682F6DCC5776CD7EB18FBD950C83EAA781FA7AE699F628EE1A6B77B1B97861F28ECDE32A150A8DC7DC1CD73D71AEDE4D6EB6F198EDE15E8902ED1FE7DFBF7A9AEA4D560B0826921682163198E65054FC8A557073DC1CD75BC256BAF7EDA9DB1C5514A5EE6EBCF5D5799A1AE3ECD3A48218C5B44B8CC43665B91D4F5F7E303DAB97EF5A179AC5C5F5A886E6381DC1FF005DB30FFA71F8E33555AE5DED23B62B1EC462C0841B8E7D4FA57761E9CA9C3965DCE3AF38CE578AB0FB848A6B895AC219BC855DD86F999477248ED9AAD53473B431910C9223382B261B0197D2A1ADD1885695E6B97B7BA7C3633B830C3F7401CD1450E29EE066D1DE8A298135DCEB7170D2A431C0AD8F923FBA38A868A285A01FFFD9');")
	_GetInfoFromDataBase ("INSERT INTO countries (rus, eng, ISO_4217_id, ISO_3166_1_alpha_2, ISO_3166_1_alpha_3, ISO_3166_1_digital, flag_height, flag_width, flag) VALUES ('Австрия', 'Austria', '978', 'AT', 'AUT', '040', 29, 44, x'FFD8FFE000104A46494600010101006000600000FFE1003A4578696600004D4D002A00000008000351100001000000010100000051110004000000010000000051120004000000010000000000000000FFDB004300100B0C0E0C0A100E0D0E1211101318281A181616183123251D283A333D3C3933383740485C4E404457453738506D51575F626768673E4D71797064785C656763FFDB0043011112121815182F1A1A2F634238426363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363FFC0001108001D002C03012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00A34577BFD87A6FFCFA27E67FC68FEC3D37FE7D13F33FE3587B267B9FDA54FB3382A2BBDFEC3D37FE7D13F33FE347F61E9BFF003E89F99FF1A3D930FED2A7D99C1515DEFF0061E9BFF3E89F99FF001A3FB0F4DFF9F44FCCFF008D1EC987F6953ECCC3FF0084B2EBFE7DE1FD68FF0084B2EBFE7DE1FD6B9EA2A79E5DCE8FA9D0FE53A1FF0084B2EBFE7DE1FD68FF0084B2EBFE7DE1FD6B9EA28E79770FA9D0FE53A1FF0084B2EBFE7DE1FD68FF0084B2EBFE7DE1FD6B9EA28E79770FA9D0FE53FFD9');")
	_GetInfoFromDataBase ("INSERT INTO countries (rus, eng, ISO_4217_id, ISO_3166_1_alpha_2, ISO_3166_1_alpha_3, ISO_3166_1_digital, flag_height, flag_width, flag) VALUES ('Азербайджан', 'Azerbaijan', '031', 'AZ', 'AZE', '031', 22, 44, x'FFD8FFE000104A46494600010101006000600000FFE1003A4578696600004D4D002A00000008000351100001000000010100000051110004000000010000000051120004000000010000000000000000FFDB004300100B0C0E0C0A100E0D0E1211101318281A181616183123251D283A333D3C3933383740485C4E404457453738506D51575F626768673E4D71797064785C656763FFDB0043011112121815182F1A1A2F634238426363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363FFC00011080016002C03012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F0076F5FEF0FCE8DEBFDE1F9D51DADE868DADE86B5FED07D85FD8187FF9FDF97F997F7023391C526F5FEF0FCE93CC0D6302249E598C9F31391B893C1E3AF1C7E1505DB472DC33C1018633D1339C51F5F7D888E4541BB7B5FCBFCCB1BD7FBC3F3A37AFF787E75476B7A1A36B7A1A3FB41F62FF00B030FF00F3FBF2FF00326A28A2BC93CE0A28A2800A28A2803FFFD9');")
	_GetInfoFromDataBase ("INSERT INTO countries (rus, eng, ISO_4217_id, ISO_3166_1_alpha_2, ISO_3166_1_alpha_3, ISO_3166_1_digital, flag_height, flag_width, flag) VALUES ('Албания', 'Albania', '008', 'AL', 'ALB', '008', 31, 44, x'FFD8FFE000104A46494600010101006000600000FFE1003A4578696600004D4D002A00000008000351100001000000010100000051110004000000010000000051120004000000010000000000000000FFDB004300100B0C0E0C0A100E0D0E1211101318281A181616183123251D283A333D3C3933383740485C4E404457453738506D51575F626768673E4D71797064785C656763FFDB0043011112121815182F1A1A2F634238426363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363FFC0001108001F002C03012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00CBA4660A32C40E71CD2D4379FF001EE47B8EF8AE15AB3EB66F962D8E17111775DE3720CB0F414A93C52286470431C0F7AE6DE4917E4248009C7E3FD2AFE9A5DEE37C99DCCDD738FD2B574ACAE79D4B1CE7351B1B145145627A614C953CC8F6E40CFA8CD3E8A04D5D599937F6EC924642AB6E71D4719F402AEC36C63D873D39E473F9D59201EA28AB736D58E78E1E319B905145150749FFD9');")
	_GetInfoFromDataBase ("COMMIT;")
EndFunc ; _CreateCountriesTable ()

Func _OpenDataBase($fDataBaseFile)
	_SQLite_Startup()
	If @error Then
		MsgBox(16, "Ошибка SQLite", "SQLite3.dll Не может быть загружен!")
		Exit -1
	EndIf
	Global $hDataBase = _SQLite_Open($fDataBaseFile)
	If @error Then
		MsgBox(16, "Ошибка SQLite", "Не могу открыть или создать базу данных!")
		Exit -1
	EndIf
	Return
EndFunc   ;==>_OpenDataBase

Func _GetInfoFromDataBase($Query, $GetArray = False, $ShowFirstRow = False)
	If $GetArray = False Then
		Local $hQuery, $aRow, $foo
		_SQLite_Query($hDataBase, $Query, $hQuery)
		While _SQLite_FetchData($hQuery, $aRow, False, False) = $SQLITE_OK
			$foo = $aRow[0]
		WEnd
		_SQLite_QueryFinalize ($hQuery)

		Return $foo
	ElseIf $GetArray = True Then
		Local $aResult, $iRows, $iColumns, $iRval
		$iRval = _SQLite_GetTable2d($hDataBase, $Query, $aResult, $iRows, $iColumns)
		If $iRval = $SQLITE_OK Then
			If $ShowFirstRow = False Then _ArrayDelete($aResult, 0)
			Return $aResult
		Else
			MsgBox(0 + 16, "Ошибка SQLite: " & $iRval, _SQLite_ErrMsg())
		EndIf
	EndIf
EndFunc   ;==>_GetInfoFromDataBase

Func _ExitProg ()
	_SQLite_Close($hDataBase)
	_SQLite_Shutdown()
	Exit
EndFunc ; _ExitProg

Картинки в базе данных в формате PNG. Необходимо отобразить флаг, например, Австрии, в любом месте GUI. Желательно без создания промежуточного файла на диске. Размеры картинок сохранены в базе, колонки flag_height и flag_width
Спасибо
 
A

Alofa

Гость
OffTopic:
Если вам это нужно только для вашего GUI, то нет необходимости использовать .db, как хранилище.
Достаточно почитать *Здесь*.
 
Автор
L

Latoid

Знающий
Сообщения
95
Репутация
11
OffTopic:
Нет, это мне не подойдет. Мне необходимо научиться работать именно с SQLite. Пример с флагами - это просто пример. В той проге, что сейчас пишу, пользователь должен будет сохранять, просматривать, удалять свои картинки. Ресурсы файла неизменяемы, насколько понимаю. Потому они не подходят



Добавлено:
Сообщение автоматически объединено:

Отвечаю сам себе =). Все элементарно:

Код:
#include <SQLite.au3>
#include <GDIPlus.au3>
#include <GUIConstantsEx.au3>

Global $DataBase = @ScriptDir & "\countries.db"

_OpenDataBase($DataBase)
_CreateCountriesTable ()

_GDIPlus_Startup()
Local Const $iWidth = 300, $iHeight = 300, $iIDOfCountry = 2

Local $hGUI = GUICreate("", $iWidth, $iHeight)
GUISetState(@SW_SHOW)

Local $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
Local $hBitmap = _GDIPlus_BitmapCreateFromMemory(Binary (_GetInfoFromDataBase ("SELECT flag FROM countries WHERE id = " & $iIDOfCountry & ";")))
_GDIPlus_GraphicsDrawImage($hGraphics, $hBitmap, ($iWidth - _GDIPlus_ImageGetWidth($hBitmap)) / 2, ($iHeight - _GDIPlus_ImageGetHeight($hBitmap)) / 2)

_GDIPlus_BitmapDispose($hBitmap)
_GDIPlus_GraphicsDispose($hGraphics)

Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE

_GDIPlus_Shutdown()
GUIDelete($hGUI)

_ExitProg ()


Func _CreateCountriesTable ()
	If _GetInfoFromDataBase ("SELECT count(name) FROM sqlite_master WHERE name = 'countries';") = 1 Then Return
	_GetInfoFromDataBase ("BEGIN;")
	_GetInfoFromDataBase ("CREATE TABLE IF NOT EXISTS countries (id INTEGER PRIMARY KEY AUTOINCREMENT, rus TEXT NOT NULL, eng TEXT NOT NULL, ISO_4217_id TINYTEXT NOT NULL DEFAULT 0, ISO_3166_1_alpha_2 TINYTEXT NOT NULL DEFAULT '', ISO_3166_1_alpha_3 TINYTEXT NOT NULL DEFAULT '', ISO_3166_1_digital TINYTEXT NOT NULL DEFAULT '', flag_height INTEGER NOT NULL DEFAULT 0, flag_width INTEGER NOT NULL DEFAULT 0, flag BLOB NOT NULL DEFAULT '');")
	_GetInfoFromDataBase ("INSERT INTO countries (rus, eng, ISO_4217_id, ISO_3166_1_alpha_2, ISO_3166_1_alpha_3, ISO_3166_1_digital, flag_height, flag_width, flag) VALUES ('Австралия', 'Australia', '036', 'AU', 'AUS', '036', 22, 44, x'FFD8FFE000104A46494600010101006000600000FFE1003A4578696600004D4D002A00000008000351100001000000010100000051110004000000010000000051120004000000010000000000000000FFDB004300100B0C0E0C0A100E0D0E1211101318281A181616183123251D283A333D3C3933383740485C4E404457453738506D51575F626768673E4D71797064785C656763FFDB0043011112121815182F1A1A2F634238426363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363FFC00011080016002C03012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F006C682F6DCC5776CD7EB18FBD950C83EAA781FA7AE699F628EE1A6B77B1B97861F28ECDE32A150A8DC7DC1CD73D71AEDE4D6EB6F198EDE15E8902ED1FE7DFBF7A9AEA4D560B0826921682163198E65054FC8A557073DC1CD75BC256BAF7EDA9DB1C5514A5EE6EBCF5D5799A1AE3ECD3A48218C5B44B8CC43665B91D4F5F7E303DAB97EF5A179AC5C5F5A886E6381DC1FF005DB30FFA71F8E33555AE5DED23B62B1EC462C0841B8E7D4FA57761E9CA9C3965DCE3AF38CE578AB0FB848A6B895AC219BC855DD86F999477248ED9AAD53473B431910C9223382B261B0197D2A1ADD1885695E6B97B7BA7C3633B830C3F7401CD1450E29EE066D1DE8A298135DCEB7170D2A431C0AD8F923FBA38A868A285A01FFFD9');")
	_GetInfoFromDataBase ("INSERT INTO countries (rus, eng, ISO_4217_id, ISO_3166_1_alpha_2, ISO_3166_1_alpha_3, ISO_3166_1_digital, flag_height, flag_width, flag) VALUES ('Австрия', 'Austria', '978', 'AT', 'AUT', '040', 29, 44, x'FFD8FFE000104A46494600010101006000600000FFE1003A4578696600004D4D002A00000008000351100001000000010100000051110004000000010000000051120004000000010000000000000000FFDB004300100B0C0E0C0A100E0D0E1211101318281A181616183123251D283A333D3C3933383740485C4E404457453738506D51575F626768673E4D71797064785C656763FFDB0043011112121815182F1A1A2F634238426363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363FFC0001108001D002C03012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00A34577BFD87A6FFCFA27E67FC68FEC3D37FE7D13F33FE3587B267B9FDA54FB3382A2BBDFEC3D37FE7D13F33FE347F61E9BFF003E89F99FF1A3D930FED2A7D99C1515DEFF0061E9BFF3E89F99FF001A3FB0F4DFF9F44FCCFF008D1EC987F6953ECCC3FF0084B2EBFE7DE1FD68FF0084B2EBFE7DE1FD6B9EA2A79E5DCE8FA9D0FE53A1FF0084B2EBFE7DE1FD68FF0084B2EBFE7DE1FD6B9EA28E79770FA9D0FE53A1FF0084B2EBFE7DE1FD68FF0084B2EBFE7DE1FD6B9EA28E79770FA9D0FE53FFD9');")
	_GetInfoFromDataBase ("INSERT INTO countries (rus, eng, ISO_4217_id, ISO_3166_1_alpha_2, ISO_3166_1_alpha_3, ISO_3166_1_digital, flag_height, flag_width, flag) VALUES ('Азербайджан', 'Azerbaijan', '031', 'AZ', 'AZE', '031', 22, 44, x'FFD8FFE000104A46494600010101006000600000FFE1003A4578696600004D4D002A00000008000351100001000000010100000051110004000000010000000051120004000000010000000000000000FFDB004300100B0C0E0C0A100E0D0E1211101318281A181616183123251D283A333D3C3933383740485C4E404457453738506D51575F626768673E4D71797064785C656763FFDB0043011112121815182F1A1A2F634238426363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363FFC00011080016002C03012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F0076F5FEF0FCE8DEBFDE1F9D51DADE868DADE86B5FED07D85FD8187FF9FDF97F997F7023391C526F5FEF0FCE93CC0D6302249E598C9F31391B893C1E3AF1C7E1505DB472DC33C1018633D1339C51F5F7D888E4541BB7B5FCBFCCB1BD7FBC3F3A37AFF787E75476B7A1A36B7A1A3FB41F62FF00B030FF00F3FBF2FF00326A28A2BC93CE0A28A2800A28A2803FFFD9');")
	_GetInfoFromDataBase ("INSERT INTO countries (rus, eng, ISO_4217_id, ISO_3166_1_alpha_2, ISO_3166_1_alpha_3, ISO_3166_1_digital, flag_height, flag_width, flag) VALUES ('Албания', 'Albania', '008', 'AL', 'ALB', '008', 31, 44, x'FFD8FFE000104A46494600010101006000600000FFE1003A4578696600004D4D002A00000008000351100001000000010100000051110004000000010000000051120004000000010000000000000000FFDB004300100B0C0E0C0A100E0D0E1211101318281A181616183123251D283A333D3C3933383740485C4E404457453738506D51575F626768673E4D71797064785C656763FFDB0043011112121815182F1A1A2F634238426363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363FFC0001108001F002C03012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00CBA4660A32C40E71CD2D4379FF001EE47B8EF8AE15AB3EB66F962D8E17111775DE3720CB0F414A93C52286470431C0F7AE6DE4917E4248009C7E3FD2AFE9A5DEE37C99DCCDD738FD2B574ACAE79D4B1CE7351B1B145145627A614C953CC8F6E40CFA8CD3E8A04D5D599937F6EC924642AB6E71D4719F402AEC36C63D873D39E473F9D59201EA28AB736D58E78E1E319B905145150749FFD9');")
	_GetInfoFromDataBase ("COMMIT;")
EndFunc ; _CreateCountriesTable ()

Func _OpenDataBase($fDataBaseFile)
	_SQLite_Startup()
	If @error Then
		MsgBox(16, "Ошибка SQLite", "SQLite3.dll Не может быть загружен!")
		Exit -1
	EndIf
	Global $hDataBase = _SQLite_Open($fDataBaseFile)
	If @error Then
		MsgBox(16, "Ошибка SQLite", "Не могу открыть или создать базу данных!")
		Exit -1
	EndIf
	Return
EndFunc   ;==>_OpenDataBase

Func _GetInfoFromDataBase($Query, $GetArray = False, $ShowFirstRow = False)
	If $GetArray = False Then
		Local $hQuery, $aRow, $foo
		_SQLite_Query($hDataBase, $Query, $hQuery)
		While _SQLite_FetchData($hQuery, $aRow, False, False) = $SQLITE_OK
			$foo = $aRow[0]
		WEnd
		_SQLite_QueryFinalize ($hQuery)

		Return $foo
	ElseIf $GetArray = True Then
		Local $aResult, $iRows, $iColumns, $iRval
		$iRval = _SQLite_GetTable2d($hDataBase, $Query, $aResult, $iRows, $iColumns)
		If $iRval = $SQLITE_OK Then
			If $ShowFirstRow = False Then _ArrayDelete($aResult, 0)
			Return $aResult
		Else
			MsgBox(0 + 16, "Ошибка SQLite: " & $iRval, _SQLite_ErrMsg())
		EndIf
	EndIf
EndFunc   ;==>_GetInfoFromDataBase

Func _ExitProg ()
	_SQLite_Close($hDataBase)
	_SQLite_Shutdown()
	Exit
EndFunc ; _ExitProg
 
Верх