sqlite常用操作语句

PRAGMA foreign_keys = 0; CREATE TABLE sqlitestudio_temp_table AS SELECT * FROM Websites; DROP TABLE Websites; CREATE TABLE Websites ( WebsiteId INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, WebsiteName VARCHAR (255), WebsiteDirectory VARCHAR (255), DbType INT DEFAULT (0), DbName VARCHAR (100), DbUid VARCHAR (50), DbPwd VARCHAR (30), BackupDirectory VARCHAR (255), BackupDateTime DATETIME, AddDateTime DATETIME ); INSERT INTO Websites ( WebsiteId, WebsiteName, WebsiteDirectory, DbType, DbName, DbUid, […]

SQLite数据库中获取新插入数据的自增长ID

SQLite数据库中有一有列名为ID的自增列,项目需求要在向数据库在插入新数据的同时返回新插入数据行的ID。 我这里用事务,把插入和查询语句通过ExecuteReader一起提交,返回DbDataReader。 实现代码

  转载请注明出处:http://www.cnblogs.com/keitsi/p/5558985.html

各类程序员学习路线图

程序猿是一种非常特殊的、可以从事程序开发、维护的动物。一般分为程序设计猿和程序编码猿,但两者的界限并不非常清楚,都可以进行开发、维护工作。 前端工程师 基础:HTML教程, CSS教程 进阶:Javascript,jQuery 高级:AJAX 教程,JSON 教程,XML 教程 框架扩展学习:Bootstrap 教程,jQuery UI 教程,jQuery EasyUI 教程,jQuery Mobile 教程 调试工具:Firebug 教程 开发工具:HBuilder,Dreamweaver,Notepad++,Photoshop PHP 工程师 基础:HTML教程,PHP 教程 进阶:SQL 教程,MySQL 教程 高级:正则表达式教程,Mongodb教程, AJAX 教程,JSON 教程,XML 教程, 开发工具:Notepad++,phpMyAdmin,EasyEclipse for PHP Python 工程师 基础:Python 教程 进阶:SQL 教程,MySQL 教程 高级:正则表达式教程,Mongodb教程, AJAX 教程,JSON 教程,XML 教程, 开发工具:P […]

SQLite 日期 & 时间

SQLite 支持以下五个日期和时间函数: 序号 函数 实例 1 date(timestring, modifier, modifier, …) 以 YYYY-MM-DD 格式返回日期。 2 time(timestring, modifier, modifier, …) 以 HH:MM:SS 格式返回时间。 3 datetime(timestring, modifier, modifier, …) 以 YYYY-MM-DD HH:MM:SS 格式返回。 4 julianday(timestring, modifier, modifier, …) 这将返回从格林尼治时间的公元前 4714 年 11 月 24 日正午算起的天数。 5 strftime(format, timestring, modifier, modifier, …) 这将根据第一个参数指定的格式字符串返回格式化的日期。具体格式见下边讲解。 上述五个日期和时间函数把时间字符串作为参数。时间字符串后跟零个或多个 modifier 修饰符。strftime() 函数也 […]

SQLite 常用函数

SQLite 有许多内置函数用于处理字符串或数字数据。下面列出了一些有用的 SQLite 内置函数,且所有函数都是大小写不敏感,这意味着您可以使用这些函数的小写形式或大写形式或混合形式。欲了解更多详情,请查看 SQLite 的官方文档: 序号 函数 & 描述 1 SQLite COUNT 函数 SQLite COUNT 聚集函数是用来计算一个数据库表中的行数。 2 SQLite MAX 函数 SQLite MAX 聚合函数允许我们选择某列的最大值。 3 SQLite MIN 函数 SQLite MIN 聚合函数允许我们选择某列的最小值。 4 SQLite AVG 函数 SQLite AVG 聚合函数计算某列的平均值。 5 SQLite SUM 函数 SQLite SUM 聚合函数允许为一个数值列计算总和。 6 SQLite RANDOM 函数 SQLite RANDOM 函数返回一个介于 -9223372036854775808 和 +9223372036854775807 之间的伪随机整数。 7 SQLite ABS 函数 SQLite ABS 函数返回数值参数的绝对值。 8 […]

SQLite 注入

如果您的站点允许用户通过网页输入,并将输入内容插入到 SQLite 数据库中,这个时候您就面临着一个被称为 SQL 注入的安全问题。本章节将向您讲解如何防止这种情况的发生,确保脚本和 SQLite 语句的安全。 注入通常在请求用户输入时发生,比如需要用户输入姓名,但用户却输入了一个 SQLite 语句,而这语句就会在不知不觉中在数据库上运行。 永远不要相信用户提供的数据,所以只处理通过验证的数据,这项规则是通过模式匹配来完成的。在下面的实例中,用户名 username 被限制为字母数字字符或者下划线,长度必须在 8 到 20 个字符之间 – 请根据需要修改这些规则。

为了演示这个问题,假设考虑此摘录:To demonstrate the problem, consider this excerpt:

函数调用是为了从用户表中检索 name 列与用户指定的名称相匹配的记录。正常情况下,$name 只包含字母数字字符或者空格,比如字符串 ilia。 […]

SQLite Autoincrement(自动递增)

SQLite 的 AUTOINCREMENT 是一个关键字,用于表中的字段值自动递增。我们可以在创建表时在特定的列名称上使用 AUTOINCREMENT 关键字实现该字段值的自动增加。 关键字 AUTOINCREMENT 只能用于整型(INTEGER)字段。 语法 AUTOINCREMENT 关键字的基本用法如下:

实例 假设要创建的 COMPANY 表如下所示:

现在,向 COMPANY 表插入以下记录:

这将向 COMPANY 表插入 7 个元组,此时 COMPANY 表的记录如下:

from:http://www.runoob.com/sqlite/sqlite-autoincrement.html

SQLite 事务(Transaction)

事务(Transaction)是一个对数据库执行工作单元。事务(Transaction)是以逻辑顺序完成的工作单位或序列,可以是由用户手动操作完成,也可以是由某种数据库程序自动完成。 事务(Transaction)是指一个或多个更改数据库的扩展。例如,如果您正在创建一个记录或者更新一个记录或者从表中删除一个记录,那么您正在该表上执行事务。重要的是要控制事务以确保数据的完整性和处理数据库错误。 实际上,您可以把许多的 SQLite 查询联合成一组,把所有这些放在一起作为事务的一部分进行执行。 事务的属性 事务(Transaction)具有以下四个标准属性,通常根据首字母缩写为 ACID: 原子性(Atomicity):确保工作单位内的所有操作都成功完成,否则,事务会在出现故障时终止,之前的操作也会回滚到以前的状态。 一致性(Consistency):确保数据库在成功提交的事务上正确地改变状态。 隔离性(Isolation):使事务操作相互独立和透明。 持久性(Durability):确保已提交事务的结果或效果在系统发生故障的情况下仍然存在。 事务控制 使用下面的命令来控制事务: BEGI […]

SQLite 索引(Index)

索引(Index)是一种特殊的查找表,数据库搜索引擎用来加快数据检索。简单地说,索引是一个指向表中数据的指针。一个数据库中的索引与一本书后边的索引是非常相似的。 例如,如果您想在一本讨论某个话题的书中引用所有页面,您首先需要指向索引,索引按字母顺序列出了所有主题,然后指向一个或多个特定的页码。 索引有助于加快 SELECT 查询和 WHERE 子句,但它会减慢使用 UPDATE 和 INSERT 语句时的数据输入。索引可以创建或删除,但不会影响数据。 使用 CREATE INDEX 语句创建索引,它允许命名索引,指定表及要索引的一列或多列,并指示索引是升序排列还是降序排列。 索引也可以是唯一的,与 UNIQUE 约束类似,在列上或列组合上防止重复条目。 CREATE INDEX 命令 CREATE INDEX 的基本语法如下:

单列索引 单列索引是一个只基于表的一个列上创建的索引。基本语法如下:

唯一索引 使用唯一索引不仅是为了性能,同时也为了数据的完整性 […]

SQLite Unions 子句

SQLite的 UNION 子句/运算符用于合并两个或多个 SELECT 语句的结果,不返回任何重复的行。 为了使用 UNION,每个 SELECT 被选择的列数必须是相同的,相同数目的列表达式,相同的数据类型,并确保它们有相同的顺序,但它们不必具有相同的长度。 语法 UNION 的基本语法如下:

这里给定的条件根据需要可以是任何表达式。 实例 假设有下面两个表,(1)COMPANY 表如下所示:

(2)另一个表是 DEPARTMENT,如下所示:

现在,让我们使用 SELECT 语句及 UNION 子句来连接两个表,如下所示:

这将产生以下结果:

UNION ALL 子句 UNION ALL 运算符用于结合两个 SELECT 语句的结果,包括重复行。 适用于 […]

SQLite Joins

SQLite 的 Joins 子句用于结合两个或多个数据库中表的记录。JOIN 是一种通过共同值来结合两个表中字段的手段。 SQL 定义了三种主要类型的连接: 交叉连接 – CROSS JOIN 内连接 – INNER JOIN 外连接 – OUTER JOIN 在我们继续之前,让我们假设有两个表 COMPANY 和 DEPARTMENT。我们已经看到了用来填充 COMPANY 表的 INSERT 语句。现在让我们假设 COMPANY 表的记录列表如下:

另一个表是 DEPARTMENT,定义如下:

下面是填充 DEPARTMENT 表的 INSERT 语句:

最后,我们在 DEPARTMENT 表中有下列的记录列表:

交叉连接 – CROSS JOIN 交叉连接(CROSS J […]