数据库一般分为 关系型和对象型,关系型是主流,对象型数据库是直接把对象存入数据库。

常用关系型数据库:

PC:Oracle MySQL SQL Server DB2

嵌入式/移动端:SQLite

本文主要介绍SQLite的基本情况与SQL基本语句。

1.SQLite实际无类型,但是表层划分数据为以下类型。
integer整形
real浮点型
text文本
blob二进制数据
有类型只是为了规范和易读,没有实质用途。

2.SQL语言是一种对关系型数据库中的数据进行定义和操作的语言。
常见操作为增删改查(CRUD,create,read,update、delete),SQL不区分大小写。
注意数据库中的字符串用单引号,语句规范为关键字大写。

3.数据库语句分类
数据定义语句(DDL:Data Definition Language),包括create和drop等操作,分别用于创建和删除表。
数据操作语句(DML:Data Manipulation Language),包括insert、update、delete等操作。
数据查询语句(DQL:Data Query Language),包括select等操作。

4.常用语句
创建表格:
CREATE TABLE IF NOT EXISTS 表名 (字段1,类型,字段2,类型,…);

删除表格:

DROP TABLE IF EXISTS 表名;
条件语句:
WHERE 字段(=,!=,>,<,is,is not,)值;
条件语句的并列:条件1 AND/OR 条件2;

排序条件:
ORDER BY 字段 ASC/DESC;

增删改查:
INSERT INTO 表名 (字段1,字段2,...) VALUES (值1,值2,…);
UPDATE 表名 SET 字段1 = 值1, 字段2 = 值2 条件;
DELETE FROM 表名 条件;

通配符:*

别名AS:字段名 AS 别名,别名支持中文。

计算记录条数: count函数,接收的参数为字段,一般放*即可
例如 SELECT count(*) FROM 表名。
注意这样写只会计算一次记录条数,不会因为字段多而重复执行。

分页查询
limit可以精确控制查询结果的数量。
SELECT 字段 FROM 表名 LIMIT x,y; /*表示跳过前面的x条数据,取y条数据。*/
常用来进行分页查询,例如每页5条
(0,5) (5,5) (10,5)这样处理,注意数字的连贯性,不用跳1。
第N页:(5*(N-1),5)。
省略的写法:limit y,表示x=0

约束
①创建表时指定某个字段非空NOT NULL,唯一UNIQUE,多个条件直接并列不必任何修饰符。
CREATE TABLE 表名 (字段名 字段类型 NOT NULL UNIQUE);
②指定默认值DEFAULT 默认值,也是和上面可以并列写。
③PRIMARY KEY代表主键,默认是integer,一般要有一个主键作为id来作为数据的唯一标志,为了让id自增长,在后面加上AUTOINCREMENT。
④复合主键,多个字段都指定了PRIMARY KEY,用于多个字段同时决定数据唯一性时。

(一)SQLite与SQL语句基础的更多相关文章

  1. Sqlite常用sql语句

    sqlite常用sql语句 --返回UTC时间 select CURRENT_TIMESTAMP; --返回本地时间 select datetime(CURRENT_TIMESTAMP,'localt ...

  2. SQL语句基础之 单表查找

    Sql语句之 单表查询 一.一般查询 1.查看表中的所有记录 以及 所有字段(属性) 语句 : select * from student; 2.只查看某些字段 语句:select sname,sex ...

  3. 精妙SQL语句 基础

    精妙SQL语句SQL语句先前写的时候,很容易把一些特殊的用法忘记,我特此整理了一下SQL语句操作,方便自己写SQL时方便一点,想贴上来,一起看看,同时希望大家能共同多多提意见,也给我留一些更好的佳句, ...

  4. Sql语句基础练习(一)

    1.求1号课成绩大于80分的学生的学号及成绩,并按成绩由高到低列出.(表名:成绩表.字段名:课号,学号,成绩.) SELECT 学号,成绩 FROM 成绩表 WHERE 课号=1 AND 成绩> ...

  5. Oracle PL/SQL语句基础学习笔记(上)

    PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE server和其它工具中了,近几年中很多其它的开发者和DBA開始使用PL/SQL,本文将讲述PL ...

  6. MySQL数据库:SQL语句基础、库操作、表操作、数据类型、约束条件、表之间的关系

    数据库相关概念: 1. 数据库服务器:运行数据库管理软件的计算机 2. 数据库管理软件:MySQL.Oracle.db2.slqserver 3. 库:文件夹,用来组织文件/表 4. 表:文件(类似于 ...

  7. 【MySQL】SQL语句基础

    一.操作数据库 1.1 创建数据库 1.2 查看数据库 1.3 修改数据库 1.4 删除数据库 1.5 选择数据库 二.操作表 2.1 创建表 2.2 查看表 2.3 修改表 2.4 删除表 三.操作 ...

  8. SQL语句基础知识

    1.关于SQL语句中exists与not exists的问题 course表如下:课程代号 课程名称 K01 奥运会主题曲 K02 喜爱的专辑 K03 VB技术大全 K04 经典歌曲 K05 个人单曲 ...

  9. SQL语句基础之 管理数据库,表 和 数据

    MySQL中的基本sql语句 MySQL中主要有三个大的对象,第一个是数据库,有了数据库后,我们才能在数据库里面建表,因为Mysql是关系数据库,它的数据都会以记录的形式存到表里,所以第二个是表,然后 ...

随机推荐

  1. [BZOJ]1045 糖果传递(HAOI2008)

    放一道数学题. Description 有n个小朋友坐成一圈,每人有ai个糖果.每人只能给左右两人传递糖果.每人每次传递一个糖果代价为1. Input 第一行一个正整数n<=1000000,表示 ...

  2. bzoj4710: [Jsoi2011]分特产 组合+容斥

    4710: [Jsoi2011]分特产 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 289  Solved: 198[Submit][Status] ...

  3. Gradle学习之闭包

    Gradle中的闭包其实就等同于Groovy中闭包,Groovy是一种jvm语言,语法兼容于java,曾几何时,也在脚本语言中独树一帜,初学Gradle的时候,大家很容易被其语法所迷惑,由于Gradl ...

  4. python raise和assert的区别

    python中raise和assert的区别 一.使用raise抛出异常 python可以自动触发异常,raise(内置函数)的定义为显示的抛出异常,用户可以使用raise进行判断,显式的引发异常,r ...

  5. 移动端手势双击(MouseDown也可以在移动端响应,但是帧率太低)

    void Update() { if (Input.touchCount > 0)//手指数量 { if(Input.GetTouch(0).phase == TouchPhase.Began ...

  6. js黑魔法

    清空一个数组 一直以来,清空一个数组都是var i = [1,2,3]; i = [];,习惯成自然,被自己坑了. 举个例子 var i = [1,2,3]; var obj = {val: i}; ...

  7. [Luogu 1516] 青蛙的约会

    Description 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事 ...

  8. Node.js UDP/Datagram

    稳定性: 3 - 稳定 调用 require('dgram') ,可以使用数据报文 sockets(Datagram sockets). 重要提醒: dgram.Socket#bind() 的行为在 ...

  9. 弹出层之2:JQuery.BlockUI

    JQuery.BlockUI是众多JQuery插件弹出层中的一个,它小巧(原版16k,压缩后10左右),容易使用, 功能齐全,支持Iframe,支持Modal,可定制性高也意味他默认谦虚的外表. jQ ...

  10. mongo 读分析

    分布式读 读冲突 分布式中数据库有多份数据,各份数据可能存在不一致性. mongo 只会写到primary节点上,理论上来说不会有文档冲突,也就是说数据库中的数据都以primary节点为标准. 但是有 ...