![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Вот то, что вы делаете, чтобы начать экспериментировать с SQLite, не имея
необходимости делать большое утомительное чтение и конфигурацию: Получите копию предварительно построенных двоичных модулей
для вашей машины, или получите копию исходных текстов и соберите их сами.
Посетите страницу download для деталей.
При приглашении оболочки или в командной строке DOS введите:
"sqlite3 test.db". Это создаст новую базу данных, названную "test.db".
Можно использовать другое имя, если вам нравится. Введите команды SQL, чтобы создать и наполнить
новую базу данных. Дополнительная документация доступна
здесь. Ниже есть простая
программа на TCL,
которая демонстрирует, как использовать интерфейс TCL для SQLite.
Программа выполняет SQL-операторы, данные как второй аргумент,
на базе данных, определенной первым аргументом. Команды, чтобы наблюдать за
процессом, являются командой sqlite3 в строке 7,
которая открывает базу данных SQLite и создает новый объект, названный
eval method в объекте db
в строке 8, чтобы получить доступ к той базе данных с использованием
команд SQL для базы данных и закрыть соединение с базой данных на последней
строке этого скрипта. Ниже есть простая программа C, которая демонстрирует, как использовать
интерфейс C/C++ с SQLite.
Название базы данных дано первым аргументом, второй аргумент это один или
несколько SQL-операторов, чтобы выполнить для
базы данных. Обратите внимание на вызовы функции
sqlite3_open() в строке 22, которые открывают
базу данных, sqlite3_exec() в строке 28,
где собственно выполняются команды SQL для базы данных, и
sqlite3_close() в строке 33, где
закрывается соединение с базой данных. См. также здесь
для вводного обзора и дорожной карты к десяткам
функций интерфейса SQLite. См. здесь для инструкций и советов о том,
как собрать программу, показанную выше.
Choose any three.
Скачайте код
Создайте новую базу данных
Напишите программы с использованием SQLite
01 #!/usr/bin/tclsh
02 if {$argc!=2} {
03 puts stderr "Usage: %s DATABASE SQL-STATEMENT"
04 exit 1
05 }
06 package require sqlite3
07 sqlite3 db [lindex $argv 0]
08 db eval [lindex $argv 1] x {
09 foreach v $x(*) {
10 puts "$v = $x($v)"
11 }
12 puts ""
13 }
14 db close
01 #include <stdio.h>
02 #include <sqlite3.h>
03
04 static int callback(void *NotUsed, int argc, char **argv, char **azColName){
05 int i;
06 for(i=0; i<argc; i++){
07 printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
08 }
09 printf("\n");
10 return 0;
11 }
12
13 int main(int argc, char **argv){
14 sqlite3 *db;
15 char *zErrMsg = 0;
16 int rc;
17
18 if( argc!=3 ){
19 fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT\n", argv[0]);
20 return(1);
21 }
22 rc = sqlite3_open(argv[1], &db);
23 if( rc ){
24 fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
25 sqlite3_close(db);
26 return(1);
27 }
28 rc = sqlite3_exec(db, argv[2], callback, 0, &zErrMsg);
29 if( rc!=SQLITE_OK ){
30 fprintf(stderr, "SQL error: %s\n", zErrMsg);
31 sqlite3_free(zErrMsg);
32 }
33 sqlite3_close(db);
34 return 0;
35 }