1. 程式人生 > >Linux下安裝及使用sqlite3資料庫

Linux下安裝及使用sqlite3資料庫

資料庫

資料庫(Database)是按照資料結構來組織、儲存和管理資料的倉庫,它產生於距今六十多年前,隨著資訊科技和市場的發展,特別是二十世紀九十年代以後,資料管理不再僅僅是儲存和管理資料,而轉變成使用者所需要的各種資料管理的方式。資料庫有很多種型別,從最簡單的儲存有各種資料的表格到能夠進行海量資料儲存的大型資料庫系統都在各個方面得到了廣泛的應用。

SQL資料庫

簡介

SQL是Structured Query Language(結構化查詢語言)的縮寫。SQL是專為資料庫而建立的操作命令集,是一種功能齊全的資料庫語言。在使用它時,只需要發出“做什麼”的命令,“怎麼做”是不用使用者考慮的。SQL功能強大、簡單易學、使用方便,已經成為了資料庫操作的基礎,並且現在幾乎所有的資料庫均支援SQL。

結構

SQL資料庫的資料體系結構基本上是三級結構,但使用術語與傳統關係模型術語不同。在SQL中,關係模式(模式)稱為“基本表”(base table);儲存模式(內模式)稱為“儲存檔案”(stored file);子模式(外模式)稱為“檢視”(view);元組稱為“行”(row);屬性稱為“列”(column)。

優點

1)非過程化語言
2)統一的語言
3)是所有關係資料庫的公共語言

硬體要求

檢視RAM和交換空間

[fanmaolin@Centeros ~]$ grep MemTotal /proc/meminfo 
MemTotal:        1004768
kB [fanmaolin@Centeros ~]$ grep SwapTotal /proc/meminfo SwapTotal: 2097148 kB

注:所需最小 RAM 為 512MB,而所需最小交換空間為 1GB。對於 RAM 小於或等於 2GB 的系統,交換空間應為 RAM 數量的兩倍;對於 RAM 大於 2GB 的系統,交換空間應為 RAM 數量的一到兩倍。

檢查/tmp目錄可用空間

至少需要400M可用空間

[fanmaolin@Centeros ~]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2 38G 7.2G 29G 21% / tmpfs 491M 72K 491M 1% /dev/shm

檢查是否已安裝sqlite3

[[email protected] ~]$ rpm -qa | grep sqlite
qt-sqlite-4.6.2-28.el6_5.x86_64
sqlite-devel-3.6.20-1.el6.x86_64
sqlite-3.6.20-1.el6.x86_64

下載安裝sqlite3

這裡寫圖片描述

[fanmaolin@Centeros ~]$ rz
rz waiting to receive.
Starting zmodem transfer.  Press Ctrl+C to cancel.
Transferring sqlite-autoconf-3200000.tar.gz...
  100%    2505 KB 2505 KB/s 00:00:01       0 Errors

?[fanmaolin@Centeros ~]$ ls
Desktop    Downloads                fl2440  Pictures                        src        test    x.c
dir        dropbear-0.53.1          git     Public                          tcode1     tftp    zuoye
Documents  dropbear-0.53.1.tar.bz2  Music   sqlite-autoconf-3200000.tar.gz  Templates  Videos  桌面
[fanmaolin@Centeros ~]$ tar -zxvf sqlite-autoconf-3200000.tar.gz

省略

[fanmaolin@Centeros ~]$ cd sqlite-autoconf-3200000
[fanmaolin@Centeros sqlite-autoconf-3200000]$ ./configure
省略
[fanmaolin@Centeros sqlite-autoconf-3200000]$ make
省略
[fanmaolin@Centeros sqlite-autoconf-3200000]$ sudo make install
省略

對資料庫進行操作

建立資料庫檔案

[fanmaolin@Centeros sqlite-autoconf-3200000]$ sqlite3 mydbtest
SQLite version 3.20.0 2017-08-01 13:24:15
Enter ".help" for usage hints.
sqlite> 
出現sqlite>提示符

檢視當前資料庫

sqlite> .database
main: /home/fanmaolin/sqlite-autoconf-3200000/mydbtest
列出當前使用的資料庫mydbtest。

建立表

qlite> create table mytable(name varchar(80),num smallint);

列出表

sqlite> .tables
mytable

查詢表

.tables+name

sqlite> .tables mytable 
mytable

插入資料

sqlite> insert into mytable values("fanmaolin",18);
sqlite> insert into mytable values("zhanghuan",17);

查詢表內容

sqlite> select * from mytable;
fanmaolin|18
zhanghuan|17

查看錶結構

sqlite> .schema
CREATE TABLE mytable(name varchar(80),num smallint);

退出資料庫

sqlite> .quit
或者
sqlite> .q

從檔案向表中匯入資料

[[email protected] ~]$ cd sqlite-autoconf-3200000
[[email protected] sqlite-autoconf-3200000]$ vim test.txt #新建檔案,輸入下面內容
 1 zhang san|20
  2 li si|19
  3 wang wu|17
  4 wang ma|21
  其中“|”是分隔符,分隔符左右不要有空格

向表中匯入檔案的資料

[[email protected] sqlite-autoconf-3200000]$ sqlite3 mydbtest
SQLite version 3.20.0 2017-08-01 13:24:15
Enter ".help" for usage hints.
sqlite> select * from mytable;#匯入前查詢
fanmaolin|18
zhanghuan|17
sqlite> .import test.txt mytable #匯入資料
sqlite> select * from mytable;#匯入後查詢
fanmaolin|18
zhanghuan|17
zhang san|20
li si|19
wang wu|17
wang ma|21

生成資料庫表的SQL指令碼

sqlite> .dump mytable 
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE mytable(name varchar(80),num smallint);
INSERT INTO mytable VALUES('fanmaolin',18);
INSERT INTO mytable VALUES('zhanghuan',16);
INSERT INTO mytable VALUES('zhang san',20);
INSERT INTO mytable VALUES('li si',19);
INSERT INTO mytable VALUES('wang wu',17);
INSERT INTO mytable VALUES('wang ma',21);
COMMIT;

匯出表中資料

sqlite> .output create.sql
sqlite> .dump mytable 
將資料庫表生成的SQL指令碼輸出到create.sql檔案

將輸出恢復到標準輸出

sqlite> .output stdout

列印SQLite環境變數

sqlite> .show
        echo: off
         eqp: off
     explain: auto
     headers: off
        mode: list
   nullvalue: ""
      output: stdout
colseparator: "|"
rowseparator: "\n"
       stats: off
       width: 
    filename: mydbtest

sqlite> .q

命令列下直接使用

[[email protected] sqlite-autoconf-3200000]$ sqlite3 mydbtest "select * from mytable;"
fanmaolin|18
zhanghuan|17
zhang san|20
li si|19
wang wu|17
wang ma|21

安裝rlwrap讓sqlite3使用更簡單

按上下鍵可以讓歷史命令回撥

下載安裝

[[email protected] ~]$ tar -zvxf rlwrap-0.30.tar.gz 
省略
[[email protected] ~]$ cd rlwrap-0.30
[[email protected] rlwrap-0.30]$ ./configure
省略
[[email protected] rlwrap-0.30]$ make
省略
[[email protected] rlwrap-0.30]$ sudo make install
省略
[[email protected] rlwrap-0.30]$ rlwrap
Usage: rlwrap [options] command ...

Options:
  -a[password:]              --always-readline[=password:]
  -A                         --ansi-colour-aware
  -b <chars>                 --break-chars=<chars>
  -c                         --complete-filenames
  -C <name|N>                --command-name=<name|N>
  -D <0|1|2>                 --history-no-dupes=<0|1|2>
  -f <completion list>       --file=<completion list>
  -F <format string>         --history-format=<format string>
  -h                         --help
  -H <file>                  --history-filename=<file>
  -i                         --case-insensitive
  -l <file>                  --logfile=<file>
  -n                         --no-warnings
  -p[ANSI colour spec]       --prompt-colour[=ANSI colour spec]
  -P <input>                 --pre-given=<input>
  -q <chars>                 --quote-characters=<chars>
  -m[newline substitute]     --multi-line[=newline substitute]
  -r                         --remember
  -v                         --version
  -s <N>                     --histsize=<N> (negative: readonly)
  -t <name>                  --set-term-name=<name>

bug reports, suggestions, updates:
http://utopia.knoware.nl/~hlub/uck/rlwrap/

安裝完成

使用

[[email protected] ~]$  rlwrap sqlite3
SQLite version 3.20.0 2017-08-01 13:24:15
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> .tables

**如果不想在每次使用前加rlwrap,則需要在~/.bash_profile下
新增:
alias sqlite3=’rlwrap sqlite3’**

[fanmaolin@Centeros ~]$ vim ~/.bash_profile
alias sqlite3='rlwrap sqlite3'  #新增
[fanmaolin@Centeros ~]$ source ~/.bash_profile

檢視效果:

[[email protected] ~]$ sqlite3
SQLite version 3.20.0 2017-08-01 13:24:15
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> 

總結:

注意sqlite語法格式

如進行插入資料等操作時,結尾要記住加“;”

sqlite> insert into mytable values("fanmaolin",18);
進行退出操作時。前面要加“.”
sqlite> .q

如果你不慎進入...>

不必驚慌,淡定的輸入“;”即可解決困境

   ...> ;
Error: near "vim": syntax error
sqlite> 

相關推薦

Linux安裝使用sqlite3資料庫

資料庫 資料庫(Database)是按照資料結構來組織、儲存和管理資料的倉庫,它產生於距今六十多年前,隨著資訊科技和市場的發展,特別是二十世紀九十年代以後,資料管理不再僅僅是儲存和管理資料,而轉變成使用者所需要的各種資料管理的方式。資料庫有很多種型別,從最簡單

Linux安裝操作SQL資料庫

——————————————————————————————————————— 主機作業系統:Centos 6.7 安裝配置:SQL資料庫郵箱:[email protected]——

linux安裝配置jenkins(war包)

eight 成功 .html 輸入 需要 目錄 bubuko grep test 1、由於Jenkins是基於Java開發的,安裝前確認操作系統已經安裝了jdk和tomcat 如何安裝,請參考WINDOWS/LINUX上部署TOMCAT服務器 2、下載war包: htt

新手學Linux(四)----Linux安裝配置MongoDB資料庫

    最近在學習研究linux,今天就教教大家怎麼在linux上安裝配置MongoDB資料庫 一、安裝步驟     1、下載及解壓     下載完成後用WinSCP複製到/us

Linux安裝簡單使用nmap/zenmap

作用: 檢測網路上的主機 檢測主機上開放的埠 檢測作業系統,硬體地址,以及軟體版本 檢測脆弱性的漏洞(Nmap的指令碼) 1/yum安裝: 命令:yum install nmap 安裝後可執行命令: nmap -h 檢視幫助文件,如有幫助文件則表示安裝成功

ElasticSearch之——linux安裝head外掛

轉載請註明出處:https://blog.csdn.net/l1028386804/article/details/79955325系統環境: vm12 下的centos 7.2當前安裝版本: elasticsearch-2.4.0.tar.gz安裝和學習可參照官方文件: 安

linux安裝配置jenkins

jenkins常用的有兩種安裝方式: 1、直接下載war包jenkins.war,下載地址https://jenkins.io/download 直接下載 1.1、可以把war包直接部署到servlet容器中,如tomcat。 1.2、可以使用命令直接執行wa

win10linux子系統安裝卸載

net .cn rep art blog .net 系統安裝 msd 人員 參考資料: https://linux.cn/article-7209-1.html https://msdn.microsoft.com/en-us/commandline/wsl/refe

linux安裝mysql5.7.17簡單配置

http mkdir exp 重要 ble ges 選擇 bsp 統一 1.mysql5.7.17安裝在/usr/local/mysql目錄裏面,也可以安裝在其他地方 (安裝包最好與Linux系統一樣,eg;64位的就是“mysql-5.7.17-linux-glibc2.

linux安裝protobufcmake編譯

light present mini require fetching AS exp web .gz 一.protobuf 安裝 protobuf版本:2.6.1 下載地址:https://github.com/google/protobuf/archive/v2.6.1.

linux安裝nexus repositoryIntellij Idea集成私有maven

files usm codehaus ima sna rem 依賴 技術分享 active 前段日子公司搞java項目,使用nexus repository搭建了私有maven庫,現在把原來的私有nuget也遷到nexus repository上了,下面介紹下搭建流程:

Linux安裝Sublime Text 3 使用快捷方式

進入 快捷 back pos tex AD ppa linux下 一個 1.添加sublime text3的倉庫 首先按下快捷鍵ctrl+alt+t打開終端; 在終端輸入:sudo add-apt-repository ppa:webupd8team/sublime-tex

Linux安裝python的gmpy2庫遇到無法定位軟件包的解決辦法

mpc python source 遇到 gmp img 定位 date get gmpy2需要gmp.h &mpfr.h &mpc.h 安裝命令: sudo apt-get install livmpfr-dev libmpc-dev 成功之後再輸入安裝

Linux安裝MySQL資料庫mysql-5.7.11

Linux下安裝MySQL資料庫(壓縮包方式安裝) https://www.cnblogs.com/xiaotao726/p/6562265.html PS:9、建立In ln -s /usr/local/mysql/ /usr/bin/ 連線資料庫時會顯示:[[email protecte

linux安裝libcurl開源庫的一般安裝步驟

tps .com 開啟 怎麽 是個 默認 常用 inux 就是   前言   總有人說:要多看源代碼!那麽源代碼去哪找呢?找到了又該怎麽安裝呢?本票博客不介紹如何使用和學習,只要講獲取和安裝,以後會將curl和libevent的使用和學習。   一、開源庫常用安裝步驟

Linux基礎Python開發工具安裝

Linux下基礎及Python開發工具安裝 第一部分、 1.作業系統簡介 1.windows 圖形化介面 2.Linux 開源,安全,高效, **命令列操作介面 3.unix 與linux是同根同源的, 大型的伺服器,商用,收費的 4.mac os 蘋果的pc作業系

linux安裝ab壓力測試工具ab命令詳解

yum -y install httpd-tools ab -v 檢視ab版本 ab –help ab -n1000 -c 10 http://www.xxxx.com/ 以上命令-n訪問1000次, -c併發10個 ab壓力測試返回報文內容詳解: Server Soft

linux安裝redis設定

 一、下載、解壓、編譯安裝 wget http://download.redis.io/releases/redis-5.0.0.tar.gz tar -zxvf redis-5.0.0.tar.gz cd redis-5.0.0makemake install 安裝完成,最後一步 m

linux安裝libcurl過程開發遇到的問題"curl/curl.h:沒有那個檔案或目錄"缺少標頭檔案解決方法

可以從官網上下載https://curl.haxx.se/download.html,也可以命令列下載 我是從官網看的版本,複製連結,再在命令列下載 # wget https://curl.haxx.se/download/curl-7.51.0.tar.gz # tar -zvxf curl-7.

分享知識-快樂自己:Linux安裝 erlang RabbitmMQ

-c ner tst 成功 path ref java tool 查看版本 Linux下安裝 erlang 及 RabbitmMQ: 下載地址一   下載地址二  下載地址三 安裝依賴: yum install ncurses-devel 安裝 erlang