SQliteデータベース操作

2780 ワード

詳細
SQLiteはプロセス内のライブラリであり、SQLデータベースエンジンを実現し、その重要な特性はゼロ構成であり、複雑なインストールや管理が必要ないことを意味する.
 
データベースとSQLの作用:ウェブサイトはwebを通じて大量の情報を更新して、データベースが情報を保存することを必要とします
Webサイトのホストに使用できるデータベース・システムには、MySQL、SQL Server、Oracleなど、さまざまなタイプがあります.
SQLはデータベースにアクセスするための言語です.データベースにデータを格納または取得するには、WebサーバがSQL言語を使用してデータベースシステムにアクセスする権限が必要です.
 
検査とインストール:Linuxオペレーティングシステムは一般的にSQLiteが付属しており、端末はsqlite 3を入力するとSQLiteがインストールされているかどうかを検査することができる.
インストールされていない場合は、
 sudo apt-get install sqlite3  //  SQlite

 
SQLiteデータストアタイプ:interger整数real浮動小数点型textテキスト文字列blobバイナリデータ(ファイルなど)
 
まず小さな例を挙げます:私はボタンをクリックする時ajaxが要求を送って、それからviewsの中でショッピングカートの操作をクリアします
if request.method == 'POST':
      CartModel.objects.all().delete()//  :CartModel.objects.all()  CartModel    

 
SQL文タイプ:(1)データ定義DDL(2)データ操作DML(3)データ照会DQL
(1)データ定義文:
①作成テーブルcreate tableテーブル名(ワードセグメント名フィールドタイプ)例:
create table t_student(id interger,name text,age integer,score real)

②削除テーブルdrop tableテーブル名例:
drop table t_student

 
(2)データ操作文:
①挿入データinsert intoテーブル名(フィールド)value(フィールド値)例:
insert into t_student(name,age) values('haizeiwang',10) 

(注:データベース内の文字列の内容はすべて単一引用符''で囲まれています)
②更新データupdateテーブル名setフィールド=フィールド値例:
update t_student set name = 'json',age = 20;

(条件更新①: update t_student set age=5 where age>10 and name!='haizei';
表の年齢が10より大きく、名前がhaizeiのデータの年齢を5に変更します.
     ②:updete t_student set score=age where name='haizei';
テーブルの名前がhaizeiのレコード、scoreフィールドの値をageフィールドの値に変更)
③削除データdelete fromテーブル名例:
delete from t_student;

(注:t_studentテーブルのすべてのレコードが削除されます)
(条件削除:delete from t_student where age<=10 or age>30
30歳以上または10未満のデータを削除)
 
(3)データ照会:キーワードselect,where,having,groupby
①selectフィールドfromテーブル名;select*fromテーブル名//すべてのフィールド例をクエリー:
elect name,age from t_student;

 
条件クエリー:(年齢が10より大きい)
select*from t_student where age>10 

②ページングクエリselect*fromテーブル名limit数値1、数値2例:
select*from t_student limit 4,8 //     4 ,   8   

(各ページに5個のデータを固定表示)
 
limit 0,5//第1ページ
limit 5,5//2ページ目
limit 5*(n-1)、5//3ページ目
 
条件文:組み合わせて使用すると、削除、更新などを1つまたは複数に特定できます.
(等しい):whereフィールド=ある値(注意:1個=)等価whereフィールドisある値
(等しくない):whereフィールド!=値等価whereフィールドis not値
(より大きい):whereフィールド>値
(複数条件):whereフィールド1=値andフィールド2>値
whereフィールド1=値orフィールド2=値