热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

sqlite基本sql语句使用

sqlite基本sql语句使用一,SQLite常见的数据类型SQLite是无类型的。这意味着你可以保存任何类型的数据到你所想要保存的任何表的任何列中,无论这列声明的数据类型是什么(只有自动递增IntegerPrimaryKey才有用)。对于SQLite来说对字段不指定类型是完全有

sqlite基本sql语句使用 一,SQLite常见的数据类型 SQLite是无类型的。 这意味着你可以保存任何类型的数据到你所想要保存的任何表的任何列中,无论这列声明的数据类型是什么(只有自动递增Integer Primary Key才有用)。对于SQLite来说对字段不指定类型是完全有

sqlite基本sql语句使用

一,SQLite常见的数据类型

SQLite是无类型的。 这意味着你可以保存任何类型的数据到你所想要保存的任何表的任何列中,无论这列声明的数据类型是什么(只有自动递增Integer Primary Key才有用)。对于SQLite来说对字段不指定类型是完全有效的。 即使SQLite允许忽略数据类型,但是仍然建议在你的Create Table语句中指定数据类型。 因为数据类型对于你和其他的程序员交

流,或者你准备换掉你的数据库引擎是非常有用的。SQLite只支持常见的5种存储类,

NULL

INTEGER --整型

REAL --浮点数

TEXT --文本

BLOB --大二进制对象

以下定义的数据类型都会转到相应的存储类中。

create table tab( --注意其中的注释方式

a VARCHAR(10), --长度不固定且其最大长度为n的字符串

b NVARCHAR(15),

c TEXT, --二进制对象

d INTEGER, --带符号的整型,具体取决于存入数字的范围大小

e FLOAT,

f BOOLEAN,

g CLOB, --使用CHAR来保存数据

h BLOB, --使用二进制对象保存数据,如保存位图

i TIMESTAMP,

j NUMBERIC(10,5),

k VARYING CHARACTER(24),

l NATIONAL VARYING CHARACTER(16), //

j REAL --浮点数字,存储为8-byte IEEE浮点数

);

二, 基本的数据操作

1,建立表

Create table admin(

username text,

age integer);

2,插入数据

insert into 表名(字段列表) values(值列表);

例如:insert into admin values(‘song’,25);

3,查询

select 字段名 from 表名;

select * from admin;

select distinct field from table_name;(distinct去掉重复项,将列中各字段值单个列出)

4,删除数据

Delete from 表名 where 条件子句。

delete from admin form where username=’song’;

5,修改

update 表名 set 字段名=值 where 条件子句。

update admin set username=’zhang’,age=24 where username=’song’ and age=25;

6,按条件分组

select * from 表名 where 条件子句 group by 分组子句 having …order by排子句

例如:

select * from admin;

select * from admin order by id desc(降序) | asc(升序);

select username from admin group by username having count(*)>1;

7,多条件查询语句

select 字段名 from 表名 where 子句1 按 子句二

select * from admin where username=’song’ and age=24;

select * from table_name where field in (‘val1’ , ’val2’ , ‘val3’ );

select * from table_name where field between val1 and val2;

select * from admin limit 5; --限制输出数据记录数量

8,多条件排序

select 字段名 from 表名 order by 字段1 (desc),字段2(desc);

select * from admin order by t1 ,t2 desc;

9,索引

例如 建立复合索引:create index idxT1 on admin(username,age);

各自建立索引:create index idxUsername on admin(username);

create index idxAge on admin(age);

10,外键FOREIGN KEY(UNIQUE | PRIMARY KEY | NOT NULL)的用法()

create table a(

a1 INTEGER PRIMARY KEY | UNIQUE | NOT NULL,

a2 TEXT,

a3 INTEGER );

create table b()(

b1 INTEGER ,

b2 TEXT,

b3 INTEGER,

foreign key(b3) references a(a1));

11,分页

select * from account limit 5 offset 3;

或者 select * from account limit 5,3;

12,模糊查询

SELECT 字段 FROM 表 WHERE 某字段 LIKE 条件

(1)%:表示任意0个或多个字符

(2)_ :表示任意单个字符,匹配单个任意字符,常用来限制表达式的字符长度语句。

(3)[ ]:表示括号内所列字符中的一个(类似正则表达式)

select * from admin where username like ‘[张李王]三’;

表示搜索的是“张三”,“李三”或“王三”

[4]:[^]表示不在括号所列之类的单个字符。

[5]:查询内容包含通配符时,用“[ ]”括起来。

13,删除表 | 索引

drop table [ IF EXISTS] admin;

drop index index_name

14,查询记录数目

select count(*) from table_name;


推荐阅读
  • 利用存储过程构建年度日历表的详细指南
    本文将介绍如何使用SQL存储过程创建一个完整的年度日历表。通过实例演示,帮助读者掌握存储过程的应用技巧,并提供详细的代码解析和执行步骤。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • SQLite 动态创建多个表的需求在网络上有不少讨论,但很少有详细的解决方案。本文将介绍如何在 Qt 环境中使用 QString 类轻松实现 SQLite 表的动态创建,并提供详细的步骤和示例代码。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解Java中的volatile、内存屏障与CPU指令
    本文详细探讨了Java中volatile关键字的作用机制,以及其与内存屏障和CPU指令之间的关系。通过具体示例和专业解析,帮助读者更好地理解多线程编程中的同步问题。 ... [详细]
  • 深入理解C++中的KMP算法:高效字符串匹配的利器
    本文详细介绍C++中实现KMP算法的方法,探讨其在字符串匹配问题上的优势。通过对比暴力匹配(BF)算法,展示KMP算法如何利用前缀表优化匹配过程,显著提升效率。 ... [详细]
  • 理解存储器的层次结构有助于程序员优化程序性能,通过合理安排数据在不同层级的存储位置,提升CPU的数据访问速度。本文详细探讨了静态随机访问存储器(SRAM)和动态随机访问存储器(DRAM)的工作原理及其应用场景,并介绍了存储器模块中的数据存取过程及局部性原理。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 自学编程与计算机专业背景者的差异分析
    本文探讨了自学编程者和计算机专业毕业生在技能、知识结构及职业发展上的不同之处,结合实际案例分析两者的优势与劣势。 ... [详细]
  • 阅读本文大约需要3分钟。微信8.0版本的发布带来了许多令人振奋的新功能,如烟花特效和改进的悬浮窗,引发了用户的热烈反响。 ... [详细]
  • 深入理解Java泛型:JDK 5的新特性
    本文详细介绍了Java泛型的概念及其在JDK 5中的应用,通过具体代码示例解释了泛型的引入、作用和优势。同时,探讨了泛型类、泛型方法和泛型接口的实现,并深入讲解了通配符的使用。 ... [详细]
  • 作为一名程序员,从大学步入职场后,常常感受到一种难以言喻的空虚感。这种感觉或许源于对生活的不满、职业发展的瓶颈,或是日常琐事带来的压力。本文将深入探讨这种复杂的情感,并尝试寻找解决之道。 ... [详细]
  • 深入解析:阿里实战 SpringCloud 微服务架构与应用
    本文将详细介绍 SpringCloud 在微服务架构中的应用,涵盖入门、实战和案例分析。通过丰富的代码示例和实际项目经验,帮助读者全面掌握 SpringCloud 的核心技术和最佳实践。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
author-avatar
8prye孙瑞D
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有