`
qingshou117
  • 浏览: 47189 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

sqlite客户端安装以及一些类型和函数

阅读更多
SQLite 的最新版本可以从http://www.sqlite.org/download.html下载 。下面我们以Windows版本sqlite-3_7_3.zip为例介绍其安装方法。
(大家可以选择下载安装适合自己的版本)
下载后,将sqlite-3_7_3.zip解压缩至C:\sqlite目录即完成安装。
C:\sqlite目录构造为:

C:\sqlite
  |
  +--sqlite3.exe
在path中增加目录C:\sqlite;(如果用powercmd已打开一个窗口,设置path后要重新打开path才会更新)
如果rails用的数据库是sqlite3
只要到程序目录执行rails dbconsole即可对程序里的数据库进行操作
=====================================
Sqlite3支持的数据类型
NULL
INTEGER
REAL
TEXT
BLOB
但实际上,sqlite3也接受如下的数据类型:
smallint 16 位元的整数。
interger 32 位元的整数。
decimal(p,s) p 精确值和 s 大小的十进位整数,精确值p是指全部有几个数(digits)大小值,s是指小数点后有几位数。如果没有特别指定,则系统会设为 p=5; s=0 。
float 32位元的实数。
double 64位元的实数。
char(n) n 长度的字串,n不能超过 254。
varchar(n) 长度不固定且其最大长度为 n 的字串,n不能超过 4000。
graphic(n) 和 char(n) 一样,不过其单位是两个字元 double-bytes, n不能超过127。这个形态是为了支援两个字元长度的字体,例如中文字。
vargraphic(n) 可变长度且其最大长度为 n 的双字元字串,n不能超过 2000
date 包含了 年份、月份、日期。
time 包含了 小时、分钟、秒。
timestamp 包含了 年、月、日、时、分、秒、千分之一秒。




SQLite包含了如下时间/日期函数:
datetime().......................产生日期和时间
date()...........................产生日期
time()...........................产生时间
strftime().......................对以上三个函数产生的日期和时间进行格式化

datetime()的用法是:datetime(日期/时间,修正符,修正符...)
date()和time()的语法与datetime()相同。

在时间/日期函数里可以使用如下格式的字符串作为参数:
YYYY-MM-DD
YYYY-MM-DD HH:MM
YYYY-MM-DD HH:MM:SS
YYYY-MM-DD HH:MM:SS.SSS
HH:MM
HH:MM:SS
HH:MM:SS.SSS
now
其中now是产生现在的时间。

举例

例1.
sqlite> select datetime('now');
2010-10-23 07:10:19

sqlite> select datetime('now','localtime');
2010-10-23 15:10:19
--执行语句的时间是北京时间2010-10-23 15:10:19,可见datetime没有返回正确的时间,datetime('now','localtime')才能返回当地时间

例2.
sqlite> select datetime('2010-10-23');
2010-10-23 00:00:00


例3.
select datetime('2010-10-23 00:20:00','+1 hour','-12 minute');
2010-10-23 01:08:00

例4.
select date('2010-10-23','+1 day','+1 year');
2011-10-24

例5.
sqlite> select datetime('now','start of year');
2010-01-01 00:00:00

例6.
sqlite> select datetime('now','start of month');
2010-10-01 00:00:00

例7.
sqlite> select datetime('now','start of day');
2010-10-23 00:00:00

例8.
sqlite> select datetime('now','+10 hour','start of day','+10 hour');
2010-10-23 10:00:00

例9.
sqlite> select datetime('now','localtime');
2010-10-23 15:22:02

例10.
sqlite> select datetime('now','+8 hour');
2010-10-23 15:22:15

例3中的+1 hour和-12 minute表示可以在基本时间上(datetime函数的第一个参数)增加或减少一定时间。

例5中的start of year表示一年开始的时间。

从例8可以看出,尽管第2个参数加上了10个小时,但是却被第3个参数“start of day”把时间归零到00:00:00,随后的第4个参数在00:00:00
的基础上把时间增加了10个小时变成了10:00:00。

例9把格林威治时区转换成本地时区。

例10把格林威治时区转换成东八区。

strftime()函数可以把YYYY-MM-DD HH:MM:SS格式的日期字符串转换成其它形式的字符串。
strftime()的语法是strftime(格式, 日期/时间, 修正符, 修正符, ...)

它可以用以下的符号对日期和时间进行格式化:
%d 月份, 01-31
%f 小数形式的秒,SS.SSS
%H 小时, 00-23
%j 算出某一天是该年的第几天,001-366
%m 月份,00-12
%M 分钟, 00-59
%s 从1970年1月1日到现在的秒数
%S 秒, 00-59
%w 星期, 0-6 (0是星期天)
%W 算出某一天属于该年的第几周, 01-53
%Y 年, YYYY
%% 百分号

strftime()的用法举例如下:


例11.
sqlite> select strftime('%Y.%m.%d %H:%M:%S','now','localtime');
2010.10.23 15:23:18


函数篇:

算术函数
abs(X) 返回给定数字表达式的绝对值。
max(X,Y[,...]) 返回表达式的最大值。
min(X,Y[,...]) 返回表达式的最小值。
random(*) 返回随机数。
round(X[,Y]) 返回数字表达式并四舍五入为指定的长度或精度。
字符处理函数
length(X) 返回给定字符串表达式的字符个数。
lower(X) 将大写字符数据转换为小写字符数据后返回字符表达式。
upper(X) 返回将小写字符数据转换为大写的字符表达式。
substr(X,Y,Z) 返回表达式的一部分。
randstr()
quote(A)
like(A,B) 确定给定的字符串是否与指定的模式匹配。
glob(A,B)
条件判断函数
coalesce(X,Y[,...])
ifnull(X,Y)
nullif(X,Y)
集合函数
avg(X) 返回组中值的平均值。
count(X) 返回组中项目的数量。
max(X) 返回组中值的最大值。
min(X) 返回组中值的最小值。
sum(X) 返回表达式中所有值的和。
其他函数
typeof(X) 返回数据的类型。
last_insert_rowid() 返回最后插入的数据的ID。
sqlite_version(*) 返回SQLite的版本。
change_count() 返回受上一语句影响的行数。
last_statement_change_count()
分享到:
评论

相关推荐

    vs2019 C# 对SQLite数据库的增删改查的代码实例

    这是一个用C#实现的读写sqlite数据库的例子,希望...SQLite也有一些限制和不足之处,例如不具有高度的并发性和良好的存取权限控制,没有内置的函数集,不支持存储过程以及深奥的SQL语言特性,也不支持XML/Java扩展等。

    sqlite3.h数据库头文件

    这个头文件定义SQLite库呈现给客户端程序的接口。如果c函数、结构、数据类型或常量定义没有出现在这个文件中,那么它不是SQLite发布的API,可以在不通知的情况下进行更改,并且不应该被使用SQLite的程序引用。

    js+html5操作sqlite数据库的方法.docx

    使用 JavaScript 和 HTML5 技术,可以在客户端实现对 SQLite 数据库的操作,从而提高应用程序的性能和安全性。 使用 JavaScript 封装的 HTML5 操作 SQLite 数据库类 在本文中,我们将使用 JavaScript 封装一个 ...

    第一节 SQLite简介.docx

    SQLite 的设计者们为了达到简单、快速和可靠性高的目标,在功能上作出了很多关键性的取舍,与此同时,也失去了一些对 RDBMS 关键性功能的支持,如高并发、细粒度访问控制、丰富的内置函数、存储过程和复杂的 SQL ...

    Android平台下通用SQLite数据库模型的设计与实现.pdf

    Android 平台下通用 SQLite 数据库模型的设计与实现是指在 Android 平台下设计和实现一个通用的 SQLite 数据库模型。该模型的设计目标是为了降低数据库管理的复杂性,使编程效率提高。 知识点一:SQLite 数据库简介...

    基于Qt和C++开发的网盘系统源码(含客户端+服务端)+项目说明+详细注释.zip

    通过信号和槽机制将对象发送的信号和接收者的槽函数关联起来,信号产生时,与之关联的槽函数就被执行。 3.使用SQLite3数据库存储用户信息和好友关系。 4.数据库和用户界面的操作类定义成单例模式,避免操作类频繁...

    SQLite基础用法

    SQLite不是一个客户端/服务器结构的数据库引擎,而是被集成在用户程序中。 作为嵌入式数据库,是应用程序(可降低延迟,因为单进程中的函数调用比跨进程通信更有效率)。 是一个零配置的数据库,不需要在系统中配置...

    jizhangSqlite:PHP + SQLite多用户记账系统

    将文件上传到服务器时,如果使用的客户端是FlashFXP,请设置以下上传模式为:二进制,否则会导致安装之后界面出现白屏。 如果服务器减少获取磁盘大小的函数,可能导致安装不顺,直接网址上加参数跳过即可。 程序名称...

    PHP程序设计第2版

    第27章 MySQL存储引擎和数据类型 第28章 保护MySQL的安全 第29章 PHP的MySQL扩展 第30章 PHP的mysqli扩展 第31章 存储例程 第32章 MySQL触发器 第33章 视图 第34章 实用数据库查询 第35章 索引和搜索 第36章 事务 第...

    Java-OpenMobility:在 OGC OWS-10 测试平台下开发的 Java GeoPackage 和 OWS 上下文库和客户端

    测试层利用我们自己的库中的函数,这些函数扩展了用于加载和处理 GML 和图块的 GeoAPI 功能到 SimpleFeature 的。( ) GeoPackage 源不能单独使用; 您将需要 v1.8、来自的 OpenGIS .jar 以及 apache http 客户端...

    嵌入式系统开发基础——基于ARM微处理器和Linux操作系统[滕英岩][习题解答]

    4.4 MiniGUI的编译和安装 4.5 MiniGUI程序框架 4.6 MiniGUI编程基础 4.6.1 MiniGUI窗口 4.6.2 MiniGUI消息及消息队列 4.6.3 MiniGUI对话框 4.6.4 MiniGUI菜单 4.6.5 MiniGUI基本控件 4.7 MiniGUI综合实例 ...

    Python核心编程(第二版).part1.rar

    第1部分占据了大约三分之二的篇幅,阐释这门语言的“核心”内容,包括基本的概念和语句、语法和风格、Python对象、数字类型、序列类型、映射和集合类型、条件和循环、文件和输入/输出、错误和异常、函数和函数式编程...

    Python核心编程(第二版).part2.rar

    第1部分占据了大约三分之二的篇幅,阐释这门语言的“核心”内容,包括基本的概念和语句、语法和风格、Python对象、数字类型、序列类型、映射和集合类型、条件和循环、文件和输入/输出、错误和异常、函数和函数式编程...

    Python核心编程(第二版).part3.rar

    第1部分占据了大约三分之二的篇幅,阐释这门语言的“核心”内容,包括基本的概念和语句、语法和风格、Python对象、数字类型、序列类型、映射和集合类型、条件和循环、文件和输入/输出、错误和异常、函数和函数式编程...

    Python核心编程(第二版).part4.rar

    第1部分占据了大约三分之二的篇幅,阐释这门语言的“核心”内容,包括基本的概念和语句、语法和风格、Python对象、数字类型、序列类型、映射和集合类型、条件和循环、文件和输入/输出、错误和异常、函数和函数式编程...

    《深入理解Android》卷Ⅱ

    4.4.4 APK 安装流程总结 4.4.5 Verification介绍 4.5 queryIntentActivities分析 4.5.1 Intent及IntentFilter介绍 4.5.2 Activity信息的管理 4.5.3 Intent 匹配查询分析 4.5.4 queryIntentActivities总结 4.6...

    PHP程序设计(第2版) 英文

    安全PHP编程 第22章 SQLite 第23章 PDO介绍 第24章 MySQL介绍 第25章 安装和配置MySQL 第26章 众多MySQL客户端 第27章 MySQL存储引擎和数据类型 第28章 保护MySQL的安全 第29章 PHP的MySQL...

    Linux聊天室 -- select && 多线程实现

    config.h:客户端配置文件(包含需要的头文件、常量、数据结构及函数声明); 3. config.c:客户端公共函数的实现文件; 4. register.c:客户端实现用户注册; 5. login.c:客户端实现用户登录; 6. chat.c:...

    基于Linux的在线英汉词典

    首先利用 sqlite3 创建一个数据库,把所需要用到的词典表放入数据库里面,再创 建一个用户数据表,也放入数据库当中,然后利用 C 语言在 Linux 系统中用 vim 编辑器写 服务器,并实现登录、注册功能部分的函数,...

Global site tag (gtag.js) - Google Analytics