Maison base de données tutoriel mysql Sqlite的简单介绍和应用

Sqlite的简单介绍和应用

Jun 07, 2016 pm 02:53 PM
sqlite 介绍 应用 简单

Sqlite的简单介绍和应用 (一)为什么要用sqlite3? 相信很多人跟我一样一开始对sqlite不太了解,不明白为什么要用sqlite,为什么不用Mysql(也是我喜欢的数据库之一)?其实,安我的理解是最重要的两点就是简单方便和小巧玲珑,不过还是把sqlite的特点跟大家


Sqlite的简单介绍和应用

 

(一)为什么要用sqlite3?

相信很多人跟我一样一开始对sqlite不太了解,不明白为什么要用sqlite,为什么不用Mysql(也是我喜欢的数据库之一)?其实,安我的理解是最重要的两点就是简单方便和小巧玲珑,不过还是把sqlite的特点跟大家说一下吧,

sqlite3的优点:  www.2cto.com  

(1)实现了绝大多数SQL92标准。整个数据库存储在一个单一的文件中

(2)数据库文件可以在不同字节许的机器之间自由共享

(3)提供了多种语言的绑定,如C/C++,python,java

(4)相对比较流行的客户/服务器数据库引擎运行的更快

(5)没有外部依赖,源代码位于公共域,可以用于任何用途。

(6)源代码开放,代码95%有较好的注释

(7)不需要配置,不需要安装,也不需要管理员

(8)sqlite不是一个用于连接到大型数据库服务器的客户端,而是非常适合桌面程序(如字典等)和小型网站的数据库服务器。

(9)sqlite直接读写在硬盘上的数据库文件。

 

(二)sqlite的安装  www.2cto.com  

(1)用系统的包管理器安装

sudo apt-get install sqlite3 sqlite3-doc

若是要安装图形界面,则输入以下指令

sudo apt-get install sqliteman sqliteman-doc

(2)编译安装

到官网(www.sqlite.org)上下载压缩包sqlite-3.*.*.tar.gz

$tar -xvf sqlite-3.*.*.tar.gz

$cd sqlite-3.*.*

$./configure

$make

$sudo make install
 

(三)sqlite的简单使用

sqlite3兼容大部分的SQL92语法,所以我们只需要学习几个sqlite3的几个特殊命令就可以了。不过为了完整,我还是在下面为大家演示了一些基本操作(如果看不懂的话,那么我想你需要补一点数据库的知识了:-))

首先在命令行执行 sqlite *.db就新建了一个库文件,我们的数据就都保存在这个文件里

$ sqlite3 test.db

SQLite version 3.7.9 2011-11-01 00:52:41

Enter ".help" for instructions

Enter SQL statements terminated with a ";"

sqlite> create table test(  www.2cto.com  

   ...> ID integer primary key,

   ...> name varchar(12)

   ...> );

sqlite> insert into test values(1,"one");

sqlite> insert into test values(2,"Two");

sqlite> insert into test values(3,"Three");

sqlite> select * from test;

1|one

2|Two

3|Three

sqlite> update test set name="One" where ID=1;

sqlite> select * from test;

1|One

2|Two

3|Three

sqlite> delete from test where ID=3;

sqlite> create index ID_INDEX on test(ID);
 

好了,上面的操作都是符合SQL92标准的,下面的一些命令才是sqlite的特色

sqlite的特殊命令都是以.开头的,比如刚开始进入sqlite的命令行时提示说“ Enter ".help" for instructions",其中“.help"就是特殊命令,我们输入.help会看到以下信息,都是以"."开头的。  www.2cto.com  

sqlite> .help

.backup ?DB? FILE      Backup DB (default "main") to FILE

.bail ON|OFF           Stop after hitting an error.  Default OFF

.databases             List names and files of attached databases

.dump ?TABLE? ...      Dump the database in an SQL text format

......

这里面有几个经常使用的,跳出来说一下。

sqlite> .tables    --显示所有的表

test

sqlite> .schema    --显示所有的定义

CREATE TABLE test(

ID integer primary key,

name varchar(12)

);

CREATE INDEX ID_INDEX on test(ID);

另外

.quit | .exit  退出

.output FILENAME 备份数据库

其他的自己看在线文档吧,就是.help命令了。
 

(四)sqlite的特别用法  www.2cto.com  

sqlite可以在shell直接运行命令

$sqlite3 test.db "select * from test;"      --显示表的内容

$sqlite3 -html test.db "select * from test;"    --将表输出为HTML

$sqlite3 test.db ".dump">test.sql   --备份数据库

$sqlite3 test.db

 

(五)用C/C++操作sqlite

我们若是用包管理器安装的sqlite3,那么很遗憾我们并没有用C操作sqlite3所需要的库,我们必须安装libsqlite3-dev

$sudo apt-get install libsqlite3-dev

若是编译安转的话,那么恭喜你,你已经可以用C操作sqlite3了,下面是我编写的一个关于test数据库的创建,插入,删除,更新,查询等的一个C程序,给大家献丑了。

 

//name:testdb.c

//Autor:prape

//date:2012-10-7

 

#include

#include

#include

 

int main(int argc,char **argv){

    sqlite3 *db=NULL;  www.2cto.com  

    char *errmsg=0;

    int sf;//打开sqlite3库返回的状态 

    //打开数据库

    sf=sqlite3_open("test.db",&db);//打开test.db,并把打开的数据库付给db

    if(sf){

        printf("can't open database test.db\n");

        sqlite3_close(db);

        return 0;

    }

    else{

        printf("open test.db successfully\n");

    }  www.2cto.com  

    //创建数据库

    char *sql="create table test(\

        ID integer primary key,\

        name varchar(12)\

        );";

    sqlite3_exec(db,sql,0,0,&errmsg);

    //插入记录

    sql="insert into \"test\" values(1,\"one\");";

    sqlite3_exec(db,sql,0,0,&errmsg);

    sql="insert into \"test\" values(2,\"Two\");";

    sqlite3_exec(db,sql,0,0,&errmsg);

    sql="select * from \"test\";";

    //查询记录

    int row=0,column=0;

    char **result;

    sqlite3_get_table(db,sql,&result,&row,&column,&errmsg);

    int i=0;

    for(i=0;i

        printf("result[%d]=%s\n",i,result[i]);

    sqlite3_free_table(result);//清除表占内存

    sql="delete from \"test\" where ID=3;";

    sqlite3_exec(db,sql,0,0,&errmsg);

        

    sqlite3_close(db);

    return 0;  www.2cto.com  

}

然后编译执行

$gcc testdb.c -lsqlite3 -o testdb.exe

如果前面你安装了libsqllite3-dev的话,那么你一定编译成功了,不过记住要链接sqlite3库。

这个程序里面还有许多不足之处,比如每次表的内容更改以后将表格打印出来会好很多,但是代码都是重复的,这里我就不复制代码了(本人有点懒),就当留给大家尝试的内容好了。

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Le rôle et l'application pratique des symboles fléchés en PHP Le rôle et l'application pratique des symboles fléchés en PHP Mar 22, 2024 am 11:30 AM

Le rôle et l'application pratique des symboles fléchés en PHP En PHP, le symbole fléché (->) est généralement utilisé pour accéder aux propriétés et méthodes des objets. Les objets sont l'un des concepts de base de la programmation orientée objet (POO) en PHP. Dans le développement actuel, les symboles fléchés jouent un rôle important dans le fonctionnement des objets. Cet article présentera le rôle et l'application pratique des symboles fléchés et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre. 1. Le rôle du symbole flèche pour accéder aux propriétés d'un objet. Le symbole flèche peut être utilisé pour accéder aux propriétés d'un objet. Quand on instancie une paire

Comment annuler la suppression de l'écran d'accueil sur iPhone Comment annuler la suppression de l'écran d'accueil sur iPhone Apr 17, 2024 pm 07:37 PM

Vous avez supprimé quelque chose d'important de votre écran d'accueil et vous essayez de le récupérer ? Vous pouvez remettre les icônes d’applications à l’écran de différentes manières. Nous avons discuté de toutes les méthodes que vous pouvez suivre et remettre l'icône de l'application sur l'écran d'accueil. Comment annuler la suppression de l'écran d'accueil sur iPhone Comme nous l'avons mentionné précédemment, il existe plusieurs façons de restaurer cette modification sur iPhone. Méthode 1 – Remplacer l'icône de l'application dans la bibliothèque d'applications Vous pouvez placer une icône d'application sur votre écran d'accueil directement à partir de la bibliothèque d'applications. Étape 1 – Faites glisser votre doigt sur le côté pour trouver toutes les applications de la bibliothèque d'applications. Étape 2 – Recherchez l'icône de l'application que vous avez supprimée précédemment. Étape 3 – Faites simplement glisser l'icône de l'application de la bibliothèque principale vers le bon emplacement sur l'écran d'accueil. Voici le schéma d'application

Du débutant au compétent : explorez différents scénarios d'application de la commande Linux tee Du débutant au compétent : explorez différents scénarios d'application de la commande Linux tee Mar 20, 2024 am 10:00 AM

La commande Linuxtee est un outil de ligne de commande très utile qui peut écrire la sortie dans un fichier ou envoyer la sortie à une autre commande sans affecter la sortie existante. Dans cet article, nous explorerons en profondeur les différents scénarios d'application de la commande Linuxtee, du débutant au compétent. 1. Utilisation de base Tout d'abord, jetons un coup d'œil à l'utilisation de base de la commande tee. La syntaxe de la commande tee est la suivante : tee[OPTION]...[FILE]...Cette commande lira les données de l'entrée standard et enregistrera les données dans

Introduction aux compétences et attributs de Hua Yishan Heart of the Moon Lu Shu Introduction aux compétences et attributs de Hua Yishan Heart of the Moon Lu Shu Mar 23, 2024 pm 05:30 PM

Dans Hua Yishan Heart Moon, Lu Shu est une célébrité SSR. Il se positionne comme un joueur de backline à cible unique et a un taux de coup critique très impressionnant. De nombreux joueurs ne connaissent pas grand-chose de Lu Shu. . Venez jeter un œil à l’introduction aux compétences et attributs de Hua Yishan Heart of the Moon Lu Shu. Attributs de célébrité Compétences de célébrité 1. Description de la compétence de Lu Ming Shuzhong : Lu Shu est né à Qiongqihui à Shuzhong. Il pratique les arts martiaux depuis qu'il est enfant et possède des compétences exceptionnelles en arts martiaux. Inflige des dégâts d'attaque de base égaux à 100 % de la puissance d'attaque de la rangée arrière de l'ennemi et réduit la rage de la cible de 10 points. Attributs de compétence : Niveau 2 : Dégâts d'attaque de base augmentés à 105 %. Niveau 2 : Les dégâts de l'attaque de base sont augmentés à 110 % et la rage de la cible est réduite de 15 points. Niveau 2 : Dégâts d'attaque de base augmentés à 115 %. Niveau 2 : Les dégâts de l'attaque de base sont augmentés à 120 % et la rage de la cible est réduite de 20 points. Niveau 2 : Attaque de base

Introduction détaillée des fonctions du Samsung S24ai Introduction détaillée des fonctions du Samsung S24ai Jun 24, 2024 am 11:18 AM

2024 est la première année des téléphones mobiles IA. De plus en plus de téléphones mobiles intègrent plusieurs fonctions IA. Grâce à la technologie intelligente IA, nos téléphones mobiles peuvent être utilisés plus efficacement et plus facilement. Récemment, la série Galaxy S24 lancée au début de l’année a encore une fois amélioré son expérience d’IA générative. Jetons un coup d’œil à l’introduction détaillée des fonctions ci-dessous. 1. Autonomisation profonde de l'IA générative. La série Samsung Galaxy S24 a apporté de nombreuses applications intelligentes grâce à l'autonomisation du Galaxy AI. Ces fonctions sont profondément intégrées à Samsung One UI6.1, permettant aux utilisateurs d'obtenir une expérience intelligente pratique à tout moment, de manière significative. améliorer les performances des téléphones mobiles. La fonction de recherche instantanée lancée par la série Galaxy S24 est l’un des points forts. Il suffit aux utilisateurs d’appuyer longuement.

Découvrez les avantages et les scénarios d'application du langage Go Découvrez les avantages et les scénarios d'application du langage Go Mar 27, 2024 pm 03:48 PM

Le langage Go est un langage de programmation open source développé par Google et lancé pour la première fois en 2007. Il est conçu pour être un langage simple, facile à apprendre, efficace et hautement simultané, et est favorisé par de plus en plus de développeurs. Cet article explorera les avantages du langage Go, présentera quelques scénarios d'application adaptés au langage Go et donnera des exemples de code spécifiques. Avantages : Forte concurrence : le langage Go prend en charge de manière intégrée les threads-goroutine légers, qui peuvent facilement implémenter une programmation simultanée. Goroutin peut être démarré en utilisant le mot-clé go

Qu'est-ce que Dogecoin Qu'est-ce que Dogecoin Apr 01, 2024 pm 04:46 PM

Dogecoin est une crypto-monnaie créée sur la base de mèmes Internet, sans plafond d'approvisionnement fixe, avec des délais de transaction rapides, des frais de transaction faibles et une grande communauté de mèmes. Les utilisations incluent les petites transactions, les pourboires et les dons de bienfaisance. Cependant, son offre illimitée, la volatilité du marché et son statut de pièce de monnaie farfelue comportent également des risques et des inquiétudes. Qu’est-ce que Dogecoin ? Dogecoin est une crypto-monnaie créée à partir de mèmes et de blagues Internet. Origine et histoire : Dogecoin a été créé en décembre 2013 par deux ingénieurs logiciels, Billy Markus et Jackson Palmer. Inspiré du mème alors populaire « Doge », une photo comique représentant un Shiba Inu avec un anglais approximatif. Caractéristiques et avantages : Offre illimitée : contrairement à d’autres crypto-monnaies telles que Bitcoin

Introduction à la plateforme de vérification des scores en ligne (outil de requête de score pratique et rapide) Introduction à la plateforme de vérification des scores en ligne (outil de requête de score pratique et rapide) Apr 30, 2024 pm 08:19 PM

Les outils d'interrogation rapide des scores offrent plus de commodité aux étudiants et aux parents. Avec le développement d'Internet, de plus en plus d'établissements d'enseignement et d'écoles ont commencé à proposer des services de vérification des scores en ligne. Pour vous permettre de suivre facilement les progrès scolaires de votre enfant, cet article présentera plusieurs plateformes de vérification des scores en ligne couramment utilisées. 1. Commodité - Les parents peuvent vérifier les résultats des tests de leurs enfants à tout moment et n'importe où via la plateforme de vérification des scores en ligne. Les parents peuvent facilement vérifier les résultats des tests de leurs enfants à tout moment en se connectant à la plateforme de vérification des scores en ligne correspondante sur un ordinateur ou un téléphone mobile. Tant qu'il y a une connexion Internet, que ce soit au travail ou en dehors, les parents peuvent se tenir au courant de l'état d'apprentissage de leurs enfants et fournir des conseils et une aide ciblés à leurs enfants. 2. Fonctions multiples - en plus de la requête de scores, il propose également de nombreuses recherches en ligne d'informations telles que les horaires de cours et les modalités d'examen.

See all articles