转载自:详见 : http://www.runoob.com/sqlite/sqlite-create-table.html

约束表实例

下面是一个实例,它创建了一个 COMPANY 表,ID 作为主键,NOT NULL 的约束表示在表中创建纪录时这些字段不能为 NULL:

sqlite> CREATE TABLE COMPANY(ID INT PRIMARY KEY     NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL );

使用一个表来填充另一个表

您可以通过在一个有一组字段的表上使用 select 语句,填充数据到另一个表中。下面是语法:

INSERT INTO first_table_name [(column1, column2, ... columnN)] SELECT column1, column2, ...columnN FROM second_table_name [WHERE condition];

您暂时可以先跳过上面的语句,可以先学习后面章节中介绍的 SELECT 和 WHERE 子句。

sqlite 运算符

定义/例子详见 : http://www.runoob.com/sqlite/sqlite-operators.html

  • 算术运算符

  • 比较运算符

  • 逻辑运算符

  • 位运算符

SQLite Update 语句

实例

假设 COMPANY 表有以下记录:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0

下面是一个实例,它会更新 ID 为 6 的客户地址:

sqlite> UPDATE COMPANY SET ADDRESS = 'Texas' WHERE ID = 6;

现在,COMPANY 表有以下记录:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 Texas 45000.0 7 James 24 Houston 10000.0

如果您想修改 COMPANY 表中 ADDRESS 和 SALARY 列的所有值,则不需要使用 WHERE 子句,UPDATE 查询如下:

sqlite> UPDATE COMPANY SET ADDRESS = 'Texas', SALARY = 20000.00;

现在,COMPANY 表有以下记录:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ---------- ---------- ---------- 1 Paul 32 Texas 20000.0 2 Allen 25 Texas 20000.0 3 Teddy 23 Texas 20000.0 4 Mark 25 Texas 20000.0 5 David 27 Texas 20000.0 6 Kim 22 Texas 20000.0 7 James 24 Texas 20000.0

SQLite Delete 语句

实例

假设 COMPANY 表有以下记录:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0

下面是一个实例,它会删除 ID 为 7 的客户:

sqlite> DELETE FROM COMPANY WHERE ID = 7;

现在,COMPANY 表有以下记录:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0

如果您想要从 COMPANY 表中删除所有记录,则不需要使用 WHERE 子句,DELETE 查询如下:

sqlite> DELETE FROM COMPANY;

现在,COMPANY 表中没有任何的记录,因为所有的记录已经通过 DELETE 语句删除。

SQLite Like 子句

实例

下面一些实例演示了 带有 '%' 和 '_' 运算符的 LIKE 子句不同的地方:

语句 描述
WHERE SALARY LIKE '200%' 查找以 200 开头的任意值
WHERE SALARY LIKE '%200%' 查找任意位置包含 200 的任意值
WHERE SALARY LIKE '_00%' 查找第二位和第三位为 00 的任意值
WHERE SALARY LIKE '2_%_%' 查找以 2 开头,且长度至少为 3 个字符的任意值
WHERE SALARY LIKE '%2' 查找以 2 结尾的任意值
WHERE SALARY LIKE '_2%3' 查找第二位为 2,且以 3 结尾的任意值
WHERE SALARY LIKE '2___3' 查找长度为 5 位数,且以 2 开头以 3 结尾的任意值

转载于:https://www.cnblogs.com/ourran/p/6829913.html

[转载][QT][SQL]sql学习记录3_sqlite之update delete like相关推荐

  1. SQL SERVER学习记录

    SQL SERVER学习记录 //创建数据库,请先在D盘手动建立一个 backup的文件夹 create database sl on (name = 'sl',filename = 'd:\back ...

  2. Qt程序单元测试学习记录

      7月比较忙,很少更新博客,上旬任务是给公司原来的程序做简单的单元测试.毕业这两年写过很多代码,从来没有注意过单元测试这东西,现在开始认真对待,开始看别人写的文章来学习.这里记录下最近学到的,以及自 ...

  3. 阿里云天池SQL训练营学习记录

    SQL训练营任务 打卡目录 SQL训练营任务 前言 一.Task01打卡 二.Task02打卡 三.Task03打卡 总结 一.算术函数 二.字符串函数 三.日期函数 四.转换函数 五.LIKE谓词 ...

  4. 关于SQL的学习记录(三、数据表)

    数据表 SQL数据类型: ①字符型数据类型 是数据库中最常用的数据类型之一, 有时人们将其称为:字符串. 字符型数据可由字母(a-z,A-Z 大小写字母共52个).数字(0-9共10个).空白符(空格 ...

  5. mysql 时间盲注语句,sql注入学习记录(5)-基于时间延迟的SQL盲注

    上次说到了sql注入中的基于报错盲注的基本的方法. 今天说一说报错盲注 基于时间延时的SQL盲注 使用时间延时注入的场景: 1.不能使用union select 联合查询方式注入 2.有些网站没有回显 ...

  6. 关于SQL的学习记录(九、聚合函数与分组数据)

    聚合函数与分组数据 聚合函数: COUNT函数 使用COUNT函数可以统计表中的记录个数. 语法格式: SELECT COUNT(字段名/*) FROM 表名 [WHERE 条件表达式]; #当字段名 ...

  7. Oracle SQL脚本学习记录一

    2019独角兽企业重金招聘Python工程师标准>>> set serveroutput on declare v_age number; begin v_age:=12; v_ag ...

  8. MySQL安装QT连接MySQL学习记录

    今天对之前几天的学习进行总结: 1.MySQL的安装及配置 2.安装navicat 软件操作数据库(非必要) 3.QT编译连接MySQL库文件 一.MySQL的安装及配置 MySQL版本号为:8.0. ...

  9. (qt)【学习记录】实现wacom压感绘图

    开头附上我博客上的链接 http://www.hbzmlab.tech/index.php/2019/03/09/45/ 要做压感绘图要考虑很多综合的问题. 1.要有高效的图片绘制方法,一是后台对像素 ...

最新文章

  1. 某厂家精密空调精品培训资料
  2. linus启动mysql失败_Linux下MySQL启动失败的解决一例
  3. 小米9将在MWC2019上登场:后置三摄拍照令人“中毒”
  4. Python基础语法案例(Fibonacci):选择结构、循环结构、异常处理结构、代码优化
  5. confluence 统计页面访问量插件Page View Tracker
  6. JXL读取,写入Excel
  7. 传输请求时报信息对象0REQ_CDATE不存在
  8. 在Windows 2003环境下配置 PHP 5.2.5 + Apache HTTP Server 2.2.8 + MySQL 6.0
  9. 【WebGIS毕业设计】(一)前言、开题与参考文献
  10. 计算机电子电路原理图,经典六款电路图集锦(图文)
  11. 跑分软件测试原理,SSD跑分的那些事儿,分享一下,测试软件跑分应该怎么看
  12. 阿里总结的《Java成神之路》 PDF 火了,完整版开放下载!
  13. java软件工程师基本技能_Java软件工程师主要有什么技能
  14. Linux系统load average异常值处理的trick
  15. 助力自动驾驶商业化 高德公布高精地图技术路线图
  16. 2. ubuntu快捷键:切换输入法中英文
  17. ORA-02396:超出最大空闲时间,请重新连接!
  18. c语言对字库的查找程序,把已经调好的GT20L16S1Y字库芯片C语言驱动代码分享给大家。...
  19. 按键弹起、按下的事件
  20. UWA发布 | 2017 Unity手游体检蓝皮书 — MMORPG篇

热门文章

  1. linux errno定义
  2. RedisTemplate和StringRedisTemplate使用
  3. 设置Clover默认进入Windows,按快捷键F8可选择不同的引导
  4. [vue] ajax、fetch、axios这三都有什么区别?
  5. 前端学习(2814):小程序学习之建立第一个项目
  6. 前端学习(2326):angular之用户输入数据
  7. 前端学习(1612):oracle简介
  8. 前端学习(983):jquery概念
  9. 前端学习(558):margin重叠
  10. 前端学习(508):水平和垂直居中第一种方式