![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android数据库
lyglostangel
这个作者很懒,什么都没留下…
展开
-
SQLite设置_id自增的方法
只需在建表的时候指定类型: INTEGER PRIMARY KEY AUTOINCREMENT然后在存入数据的时候不设置其值(或设置为null)即可。如建表:[sql] view plaincopyprint?CREATE TABLE TABLE_NAME ( _id INTEGER PRIMARY KEY AUTOINCREMENT转载 2015-04-07 11:49:38 · 13412 阅读 · 0 评论 -
SQL MINUS的用法
MINUS 指令是运用在两个 SQL 语句上。它先找出第一个 SQL 语句所产生的结果,然后看这些结果有没有在第二个 SQL 语句的结果中。如果有的话,那这一笔资料就被去除,而不会在最后的结果中出现。如果第二个 SQL 语句所产生的结果并没有存在于第一个 SQL 语句所产生的结果内,那这笔资料就被抛弃。MINUS 的语法如下:[SQL 语句 1]MINUS[SQL 语句 2转载 2015-03-07 12:10:26 · 752 阅读 · 0 评论 -
SQL ORDER BY的用法
到目前为止,我们已学到如何藉由 SELECT 及 WHERE这两个指令将资料由表格中抓出。不过我们尚未提到这些资料要如何排列。这其实是一个很重要的问题。事实上,我们经常需要能够将抓出的资料做一个有系统的显示。这可能是由小往大 (ascending) 或是由大往小(descending)。在这种情况下,我们就可以运用 ORDER BY这个指令来达到我们的目的。ORDER BY 的语法如下转载 2015-03-07 11:24:13 · 479 阅读 · 0 评论 -
SQL CREATE TABLE的用法
表格是数据库中储存资料的基本架构。在绝大部份的情况下,数据库厂商不可能知道您需要如何储存您的资料,所以通常您会需要自己在数据库中建立表格。虽然许多数据库工具可以让您在不需用到 SQL 的情况下建立表格,不过由于表格是一个最基本的架构,我们决定包括 CREATE TABLE 的语法在这个网站中。在我们跳入 CREATE TABLE 的语法之前,我们最好先对表格这个东西有些多一点的了解。表格被转载 2015-03-07 12:23:34 · 1104 阅读 · 0 评论 -
SQL TRIM的用法
SQL 中的 TRIM 函数是用来移除掉一个字串中的字头或字尾。最常见的用途是移除字首或字尾的空白。这个函数在不同的资料库中有不同的名称:MySQL: TRIM(), RTRIM(), LTRIM()Oracle: RTRIM(), LTRIM()SQL Server: RTRIM(), LTRIM()各种 trim 函数的语法如下:TRIM([[位置] [要移除的字串]转载 2015-03-07 12:16:37 · 2443 阅读 · 0 评论 -
SQL SELECT的用法
是用来做什么的呢?一个最常用的方式是将资料从数据库中的表格内选出。从这一句回答中,我们马上可以看到两个关键字: 从 (FROM) 数据库中的表格内选出 (SELECT)。(表格是一个数据库内的结构,它的目的是储存资料。在表格处理这一部分中,我们会提到如何使用 SQL 来设定表格。) 我们由这里可以看到最基本的 SQL 架构:SELECT "栏位名" FROM "表格名"我们用以转载 2015-03-07 10:58:49 · 325 阅读 · 0 评论 -
SQL DELETE FROM的用法
在某些情况下,我们会需要直接由数据库中去除一些资料。这可以藉由 DELETE FROM 指令来达成。它的语法是:DELETE FROM "表格名"WHERE {条件}以下我们用个实例说明。假设我们有以下这个表格:Store_Information 表格store_nameSalesDateLos Angeles$1500J转载 2015-03-07 15:18:09 · 9139 阅读 · 0 评论 -
SQL CREATE VIEW的用法
视观表 (Views) 可以被当作是虚拟表格。它跟表格的不同是,表格中有实际储存资料,而视观表是建立在表格之上的一个架构,它本身并不实际储存资料。建立一个视观表的语法如下:CREATE VIEW "VIEW_NAME" AS "SQL 语句""SQL 语句" 可以是任何一个我们在这个教材中有提到的 SQL。来看一个例子。假设我们有以下的表格:TABLE Cu转载 2015-03-07 12:21:28 · 1566 阅读 · 0 评论 -
SQL GROUP BY的用法
我们现在回到函数上。记得我们用 SUM 这个指令来算出所有的 Sales (营业额)吧!如果我们的需求变成是要算出每一间店 (store_name) 的营业额 (sales),那怎么办呢?在这个情况下,我们要做到两件事:第一,我们对于 store_name 及 Sales 这两个栏位都要选出。第二,我们需要确认所有的 sales 都要依照各个 store_name 来分开算。这个语法为:S转载 2015-03-07 11:32:44 · 392 阅读 · 0 评论 -
SQL COUNT的用法
在上一页有提到,COUNT 是函数之一。由于它的使用广泛,我们在这里特别提出来讨论。基本上,COUNT 让我们能够数出在表格中有多少笔资料被选出来。它的语法是:SELECT COUNT("栏位名") FROM "表格名" 举例来说,若我们要找出我们的示范表格中有几笔 store_name 栏不是空白的资料时,Store_Information 表格转载 2015-03-07 11:26:02 · 507 阅读 · 0 评论 -
SQL SUBSTRING的用法
SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分。这个函数的名称在不同的资料库中不完全一样:MySQL: SUBSTR(), SUBSTRING()Oracle: SUBSTR()SQL Server: SUBSTRING()最常用到的方式如下 (在这里我们用SUBSTR()为例):SUBSTR(str,pos): 由中,选出所有从第位置开始的字元转载 2015-03-07 12:18:42 · 1324 阅读 · 0 评论 -
List、Set、Map、数组遍历应用举例
package com.yzy.hibernate.dao;import java.util.ArrayList;import java.util.HashMap;import java.util.HashSet;import java.util.Iterator;import java.util.List;import java.util.Map;import j转载 2015-03-07 15:32:22 · 407 阅读 · 0 评论 -
SQL UPDATE的用法
我们有时候可能会需要修改表格中的资料。在这个时候,我们就需要用到 UPDATE 指令。这个指令的语法是:UPDATE "表格名"SET "栏位1" = [新值]WHERE {条件}最容易了解这个语法的方式是透过一个例子。假设我们有以下的表格:Store_Information 表格store_nameSalesDateLos转载 2015-03-07 15:18:45 · 1611 阅读 · 0 评论 -
SQL 外来键的用法 references
外来键是一个(或数个)指向另外一个表格主键的栏位。外来键的目的是确定资料的参考完整性(referential integrity)。换言之,只有被准许的资料值才会被存入资料库内。举例来说,假设我们有两个表格:一个 CUSTOMER 表格,里面记录了所有顾客的资料;另一个 ORDERS 表格,里面记录了所有顾客订购的资料。在这里的一个限制,就是所有的订购资料中的顾客,都一定是要跟在 CUST转载 2015-03-07 12:39:26 · 20770 阅读 · 1 评论 -
SQL CREATE INDEX的用法
索引 (Index) 可以帮助我们从表格中快速地找到需要的资料。举例来说,假设我们要在一本园艺书中找如何种植青椒的讯息。若这本书没有索引的话,那我们是必须要从头开始读,直到我们找到有关种直青椒的地方为止。若这本书有索引的话,我们就可以先去索引找出种植青椒的资讯是在哪一页,然后直接到那一页去阅读。很明显地,运用索引是一种有效且省时的方式。从资料库表格中寻找资料也是同样的原理。如果一个表格没有转载 2015-03-07 12:26:56 · 700 阅读 · 0 评论 -
SQL UNION ALL的用法
UNION ALL 这个指令的目的也是要将两个 SQL 语句的结果合并在一起。 UNION ALL 和 UNION 不同之处在于UNION ALL 会将每一笔符合条件的资料都列出来,无论资料值有无重复。UNION ALL 的语法如下:[SQL 语句 1]UNION ALL[SQL 语句 2]我们用和上一页同样的例子来显示出 UNION ALL 和 UNION 的转载 2015-03-07 11:54:59 · 727 阅读 · 0 评论 -
SQL HAVING的用法
那我们如何对函数产生的值来设定条件呢?举例来说,我们可能只需要知道哪些店的营业额有超过 $1,500。在这个情况下,我们不能使用 WHERE 的指令。那要怎么办呢?很幸运地,SQL 有提供一个 HAVING 的指令,而我们就可以用这个指令来达到这个目标。 HAVING 子句通常是在一个 SQL 句子的最后。一个含有 HAVING 子句的 SQL 并不一定要包含 GROUP BY 子句。HAVI转载 2015-03-07 11:29:07 · 560 阅读 · 0 评论 -
SQL 函数的用法
既然数据库中有许多资料都是已数字的型态存在,一个很重要的用途就是要能够对这些数字做一些运算,例如将它们总合起来,或是找出它们的平均值。SQL 有提供一些这一类的函数。它们是: AVG (平均)COUNT (计数)MAX (最大值)MIN (最小值)SUM (总合)运用函数的语法是:SELECT "函数名"("栏位名") FROM "表格名" 举例来说转载 2015-03-07 11:20:08 · 374 阅读 · 0 评论 -
SQL AND OR的用法
在上一页中,我们看到 WHERE 指令可以被用来由表格中 有条件地选取资料。 这个条件可能是简单的 (像上一页的例子),也可能是复杂的。复杂条件是由二或多个简单条件透过 AND 或是 OR 的连接而成。一个 SQL 语句中可以有无限多个简单条件的存在。复杂条件的语法如下:SELECT "栏位名" FROM "表格名" WHERE "简单条件" {[AND|OR] "转载 2015-03-07 11:14:26 · 592 阅读 · 0 评论 -
SQL BETWEEN的用法
IN 这个指令可以让我们依照一或数个不连续 (discrete) 的值的限制之内抓出数据库中的值,而 BETWEEN 则是让我们可以运用一个范围 (range) 内抓出数据库中的值。BETWEEN这个子句的语法如下:SELECT "栏位名" FROM " 表格名" WHERE "栏位名" BETWEEN '值一' AND '值二'这将选出栏位值包含在值一及值二之间的每一笔资转载 2015-03-07 11:07:56 · 1503 阅读 · 0 评论 -
SQL IN的用法
在 SQL 中,在两个情况下会用到 IN 这个指令;这一页将介绍其中之一━━与 WHERE 有关的那一个情况。在这个用法下, 我们事先已知道至少一个我们需要的值,而我们将这些知道的值都放入 IN 这个子句。 IN 指令的语法为下:SELECT "栏位名" FROM "表格名" WHERE "栏位名" IN ('值一', '值二', ...)在括弧内可以有一或多个值,而不同值转载 2015-03-07 11:06:00 · 871 阅读 · 0 评论 -
SQL UNION的用法
UNION 指令的目的是将两个 SQL 语句的结果合并起来。从这个角度来看, UNION 跟 JOIN 有些许类似,因为这两个指令都可以由多个表格中撷取资料。 UNION 的一个限制是两个 SQL 语句所产生的栏位需要是同样的资料种类。另外,当我们用 UNION这个指令时,我们只会看到不同的资料值 (类似 SELECT DISTINCT)。UNION 的语法如下:[SQL 语句转载 2015-03-07 11:49:47 · 450 阅读 · 0 评论 -
SQL ALIAS的用法
接下来,我们讨论 alias (别名) 在 SQL 上的用处。最常用到的别名有两种: 栏位别名及表格别名。简单地来说,栏位别名的目的是为了让 SQL 产生的结果易读。在之前的例子中, 每当我们有营业额总合时,栏位名都是 SUM(sales)。 虽然在这个情况下没有什么问题,可是如果这个栏位不是一个简单的总合,而是一个复杂的计算, 那栏位名就没有这么易懂了。若我们用栏位别名的话,就可以确认结转载 2015-03-07 11:42:12 · 624 阅读 · 0 评论 -
SQL 主键的用法
主键 (Primary Key) 中的每一笔资料都是表格中的唯一值。换言之,它是用来独一无二地确认一个表格中的每一行资料。主键可以是原本资料内的一个栏位,或是一个人造栏位 (与原本资料没有关系的栏位)。主键可以包含一或多个栏位。当主键包含多个栏位时,称为组合键 (Composite Key)。主键可以在建置新表格时设定 (运用 CREATE TABLE 语句),或是以改变现有的表格架构方式转载 2015-03-07 12:29:40 · 1341 阅读 · 0 评论 -
SQL Subquery的用法
我们可以在一个 SQL 语句中放入另一个 SQL 语句。当我们在 WHERE 子句或 WHERE 子句或 HAVING 子句中插入另一个 SQL 语句时,我们就有一个 subquery 的架构。 Subquery 的作用是什么呢?第一,它可以被用来连接表格。另外,有的时候 subquery 是唯一能够连接两个表格的方式。Subquery 的语法如下:SELECT "栏位1"转载 2015-03-07 11:53:27 · 2297 阅读 · 0 评论 -
SQL 外部连接的用法
之前我们看到的左连接 (left join),又称内部连接 (inner join)。在这个情况下,要两个表格内都有同样的值,那一笔资料才会被选出。那如果我们想要列出一个表格中每一笔的资料,无论它的值在另一个表格中有没有出现,那该怎么办呢?在这个时候,我们就需要用到 SQL OUTER JOIN (外部连接) 的指令。外部连接的语法是依数据库的不同而有所不同的。举例来说,在 Oracle转载 2015-03-07 11:46:29 · 1160 阅读 · 0 评论 -
Uri常用方法
Uri uri = Uri.parse("content://com.example.diarycontentprovider/diaries/1"); List list = uri.getPathSegments(); for(int i=0;i System.out.print(list.get(i)); Syst转载 2015-03-16 17:12:05 · 1303 阅读 · 0 评论 -
电话本群组建表语句
CREATE VIEW view_groups ASSELECT groups._id AS _id,groups.account_id AS account_id,accounts.account_name AS account_name,accounts.account_type AS account_type,accounts.data_set AS data_set,原创 2015-03-02 16:45:18 · 583 阅读 · 0 评论 -
SQL句法的应用
在这一页中,我们列出所有在这个网站有列出 SQL 指令的语法。若要更详尽的说明,请点选指令名称。这一页的目的是提供一个简洁的 SQL 语法做为读者参考之用。我们建议您现在就按 Control-D 将本页加入您的『我的最爱』。Select SELECT "栏位" FROM "表格名"Distinct SELECT DISTINCT "栏位" FROM "表格名"转载 2015-03-03 10:21:05 · 406 阅读 · 0 评论 -
Android性能优化之数据库优化
1、索引简单的说,索引就像书本的目录,目录可以快速找到所在页数,数据库中索引可以帮助快速找到数据,而不用全表扫描,合适的索引可以大大提高数据库查询的效率。(1). 优点大大加快了数据库检索的速度,包括对单表查询、连表查询、分组查询、排序查询。经常是一到两个数量级的性能提升,且随着数据数量级增长。(2). 缺点索引的创建和维护存在消耗,索引会占用物理空间,且随着数据量的增加而转载 2015-03-03 10:17:28 · 358 阅读 · 0 评论 -
android sqllite存储
class UserDatabaseHelper extends SQLiteOpenHelper{public static final String UID = "userid";public static final String NAME = "name";public static final String GENDER = "gender";public stati转载 2015-03-03 10:18:38 · 585 阅读 · 0 评论 -
SQL中 inner join、 left join 、right join、 outer join之间的区别
举个例子你就能知道了!A表(a1,b1,c1) B表(a2,b2)a1 b1 c1 a2 b201 数学 95 01 张三02 语文 90 02 李四03 英语 80 04 王五select A.*,B.* from A inner join B on(A.a1=B.a2)结果是:a1 b1 c1 a2 b201 数学 95 01 张三02 语文 90转载 2015-03-02 16:40:40 · 452 阅读 · 0 评论 -
删除表中重复记录
1、查找表中多余的重复记录,重复记录是根据单个字段(tabId)来判断 select * from tabwhere tabId in (select tabId from tab group by tabId having count(tabId) > 1)2、删除表中多余的重复记录,重复记录是根据单个字段(tabId)来判断,只留有rowid最小的记录d转载 2015-03-07 15:31:29 · 584 阅读 · 0 评论 -
SQL WHERE的用法
我们并不一定每一次都要将表格内的资料都完全抓出。在许多时候,我们会需要选择性地抓资料。就我们的例子来说,我们可能只要抓出营业额超过 $1,000 的资料。要做到这一点,我们就需要用到 WHERE 这个指令。这个指令的语法如下:SELECT "栏位名" FROM "表格名" WHERE "条件"若我们要由以下的表格抓出营业额超过 $1,000 的资料,Store_In转载 2015-03-07 11:02:34 · 624 阅读 · 0 评论 -
SQL 表格连接的用法
现在我们介绍连接(join)的概念。要了解连接,我们需要用到许多我们之前已介绍过的指令。 我们先假设我们有以下的两个表格,Store_Information 表格store_nameSalesDateLos Angeles$1500Jan-05-1999San Diego$250Jan-07-1999转载 2015-03-07 11:38:51 · 466 阅读 · 0 评论 -
SQL TRUNCATE TABLE的用法
有时候我们会需要清除一个表格中的所有资料。要达到者个目的,一种方式是我们在 SQL DROP 那一页 看到的DROP TABLE 指令。不过这样整个表格就消失,而无法再被用了。另一种方式就是运用 TRUNCATE TABLE 的指令。在这个指令之下,表格中的资料会完全消失,可是表格本身会继续存在。 TRUNCATE TABLE 的语法为下:TRUNCATE TABLE "表格名"转载 2015-03-07 15:15:41 · 2159 阅读 · 0 评论 -
SQL INSERT INTO的用法
到目前为止,我们学到了将如何把资料由表格中取出。但是这些资料是如果进入这些表格的呢? 这就是这一页 (INSERT INTO) 和下一页 (UPDATE) 要讨论的。基本上,我们有两种作法可以将资料输入表格中内。一种是一次输入一笔,另一种是一次输入好几笔。 我们先来看一次输入一笔的方式。依照惯例,我们先介绍语法。一次输入一笔资料的语法如下:INSERT INTO "表格名"转载 2015-03-07 15:14:07 · 1206 阅读 · 0 评论 -
SQL ALTER TABLE的用法
在表格被建立在资料库中后,我们常常会发现,这个表格的结构需要有所改变。常见的改变如下:加一个栏位删去一个栏位改变栏位名称改变栏位的资料种类以上列出的改变并不是所有可能的改变。ALTER TABLE 也可以被用来作其他的改变,例如改变主键定义。ALTER TABLE 的语法如下:ALTER TABLE "table_name"[改变方式][改变方式] 的详转载 2015-03-07 12:33:51 · 1542 阅读 · 0 评论 -
SQL CONCATENATE的用法
有的时候,我们有需要将由不同栏位获得的资料串连在一起。每一种资料库都有提供方法来达到这个目的:MySQL: CONCAT()Oracle: CONCAT(), ||SQL Server: +CONCAT() 的语法如下:CONCAT(字串1, 字串2, 字串3, ...): 将字串1、字串2、字串3,等字串连在一起。请注意,Oracle的CONCAT()只允许两个参数;换言转载 2015-03-07 12:14:31 · 1200 阅读 · 0 评论 -
SQL INTERSECT的用法
和 UNION 指令类似, INTERSECT 也是对两个 SQL 语句所产生的结果做处理的。不同的地方是, UNION 基本上是一个 OR (如果这个值存在于第一句或是第二句,它就会被选出),而 INTERSECT 则比较像 AND ( 这个值要存在于第一句和第二句才会被选出)。 UNION 是联集,而 INTERSECT 是交集。INTERSECT 的语法如下:[SQL语句转载 2015-03-07 12:11:47 · 4610 阅读 · 0 评论