sqlite3使用2
一. 在cmd中打开SQLite
1.进入数据库
通过输入
d:
cd D:\……\SQLite
sqlite3
进入数据库
查看数据库的基本信息:
.help 显示各种重要的SQLite点命令的列表
.show 显示SQLite命令提示符的默认设置
.schema sqlite_master 主表:保存数据库表的关键信息
二. 语法中的注意事项:
大小写敏感:不区分大小写,但是一些命令是大小写敏感 比如:GLOB和glob
注释:可以出现在任何空白处,包括在表达式内和其他SQL语句中间,但是不能嵌套,以两个连续的"-"字符开始,并扩展到下一个换行符直到输入结束。
语句:所以的SQLite语句可以以任何关键字开始,以分号(;)结束。
例如:SELECT、INSERT、UPDATE、DELETE、ALTER、DROP等。
输入语句时,注意不要有空格!!!特别是点语句!!!
三. 常用语句:
1.创建数据库
进入sqlite3环境下:
假定我们创建一个Student的数据库,就在SQLite的条件下输入:
.open Student.db
如果这个数据库存在,就直接进入。如果不存在,会在目录下创建。
如果存在Student.db,那么我们可以查看数据库中包含哪些表:
.table
如果不存在,那么此时也已经建好了这张表。
2.创建表
假定我们要创建的表名为Info,表中包括学生的学号、姓名、性别、年龄、籍贯。在cmd中输入:
CREATE TABLE Info(
ID INT PRIMARY KEY NOT NULL,
Name TEXT NOT NULL,
Sex TEXT,
Age INT,
BP TEXT);
此处把学号设置为主键(primary key),把学号和姓名设置为非空(not null)。
这张表就建好了,可以在SQLite Expert Personal可视化工具中看到。
3.插入数据
插入数据可以一条一条录入,也可以把数据储存在csv文件中批量录入。
首先来说分条录入,插入数据的语句是:
INSERT INTO Info VALUES(001,“刘星”,“男”,18,“北京”);
注意学号的唯一性和学号、姓名的非空设置。
表格创建如下:
下面来说批量导入的语句。
首先确保数据储存在csv文件中,并且编码格式为UTF-8。
第一行不要出现列名,直接上数据。
语句如下:
.separator “,”
.import ““D:\Flask\……\student.csv” Info
注意:separator和”,"之间有一个空格
4.增加字段
假如我们需要在已有表中增加一列成绩:
ALTER TABLE Info ADD Grade INT;
5.更新数据
如果需要对已有数据进行修改,例如需把“刘星”的年龄改为19岁:
UPDATE Info SET Age=“19” WHERE ID=001;
如想对一列数据统一修改,可去掉where子句,给一列赋同一值。
6.删除字段
删除字段不能直接用语句进行操作。
要先从旧表复制一张新表,其中不包括已有的列;
再将旧表删除;
最后重命名新表。
还是以Info表为例,我们现在要删除籍贯列:
CREATE TABLE Info1 AS SELECT ID,Name,Sex,Age from Info;
DROP TABLE IF EXISTS Info;
ALTER TABLE Info1 RENAME TO Info;
7.导出数据表
导入数据表仍然是到csv文件中,文件名为students.csv
.output student.csv
select * from Info;
.output stdout
注意:最后一行没有;
8.删除表
在删除字段中有提到,不多介绍了。
SQLite中基本用到的功能大致就是这些了,我自己进行建表、处理、导出使用这些语句足够
————————————————
版权声明:本文为CSDN博主「kapokkk」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43219504/article/details/88363817
sqlite3使用2的更多相关文章
- iOS 数据存储之SQLite3的使用
SQLite3是iOS内嵌的数据库,SQLite3在存储和检索大量数据方面非常有效,它使得不必将每个对象都加到内存中.还能够对数据进行负责的聚合,与使用对象执行这些操作相比,获得结果的速度更快. SQ ...
- Android中如何使用命令行查看内嵌数据库SQLite3
转载博客:http://www.linuxidc.com/Linux/2011-06/37135.htm 在上图中,除了最后一个红色的方框,其它方框都是adb shell下的命令. [1]在Andro ...
- flask+sqlite3+echarts2+ajax数据可视化
前提: 准备Python + Flask+Sqlite3的平台环境(windows系统) 前面一节介绍flask怎么安装了,剩下sqlite3下载后解压,然后环境变量添加解压路径就行了 附加下载地址: ...
- flask+sqlite3+echarts2+ajax数据可视化报错:UnicodeDecodeError: 'utf8' codec can't decode byte解决方法
flask+sqlite3+echarts2+ajax数据可视化报错: UnicodeDecodeError: 'utf8' codec can't decode byte 解决方法: 将 py文件和 ...
- 安卓使用SQlite3数据库无法id主键无法自动增加?不是的。
安卓使用SQlite3数据库无法id主键无法自动增加?不是的. 要这样写:id integer primary key ,要写integer而不是int所以会报错! http://blog.csdn. ...
- 安卓虚拟机adb shell sqlite3数据库
adb shell 连接: //http://www.cnblogs.com/xiaobo-Linux/ Android把数据都存放在data/data目录下. 我们使用cd命令转到data/data ...
- SQLite源程序分析之sqlite3.c
/****************************************************************************** ** This file is an a ...
- SQLite3源程序分析之查询处理及优化
前言 查询处理及优化是关系数据库得以流行的根本原因,也是关系数据库系统最核心的技术之一.SQLite的查询处理模块很精致,而且很容易移植到不支持SQL的存储引擎(Berkeley DB最新的版本已经将 ...
- SQLite3源程序分析之虚拟机
前言 最早的虚拟机可追溯到IBM的VM/370,到上个世纪90年代,在计算机程序设计语言领域又出现一件革命性的事情——Java语言的出现,它与c++最大的不同在于它必须在Java虚拟机上运行.Java ...
- sqlite3的图片的(二进制数据)存取操作
sqlite3的图片的(二进制数据)存取操作 前言 上篇介绍了sqlite3的一些常用插入操作方法和注意事项,在实际项目中遇到了图片缓存的问题,由于服务器不是很稳定,且受到外界环境的干扰(例如断电 ...
随机推荐
- vue el-tree 单选实现
<el-tree :props="props" ref="treeList" :load="loadNode" check-stric ...
- SpingBoot面试大汇总
1.什么是SpringBoot? 1)用来优化Spring应用的初始搭建以及开发过程,使用特定的方式来配置(properties和yml文件) 2)嵌入式的内置服务器tomcat无需部署war文件简化 ...
- [扫描工具]dirsearch简单使用
[扫描工具]dirsearch简单使用 dirsearch是一个python开发的目录扫描工具.和我们平时使用的dirb.御剑之类的工具一样,就是为了扫描网站的敏感文件和目录从而找到突破口. 安装: ...
- uniapp使用阿里oss上传
可以删除重新上传,点击图片大图等功能. <view class="uploadView"> <view class="imageView" v ...
- Java方法-什么是方法
Java方法-什么是方法 package com.andy.base.Andy.operator.method; public class Demo01 { //main方法 public stati ...
- Java-14流Stream【创建一个简易for循环工具】
Java-14流Stream 构造简易的循环取代for IntStream类提供了一个range()方法,可以生成一个流----由int值组成的序列 import static java.util.s ...
- IDEA: 如何导入项目模块 以及 将 Java程序打包 JAR 详细步骤
IDEA: 如何导入项目模块 以及 将 Java程序打包 JAR 详细步骤 . @ 目录 IDEA: 如何导入项目模块 以及 将 Java程序打包 JAR 详细步骤 IDEA 导入项目模块 Modul ...
- 在CentOS中安装和使用nginx
概述 本文简单讲述一下,如何快速将一个内网的Web服务通过nginx提供给外网访问,并且启用HTTPS.例如我们部署了一个kubesphere,地址为192.168.202.151:30880,需要通 ...
- RealWorldCTF渗透赛第二期复现-ctfshow
比赛概述 开始时间:2023年3月10日15时 环境保留时间:72小时 环境重置时间:20分钟 官方wp链接:Docs (feishu.cn) [本次复现跟着官方WP进行,只做记录学习之用] 0x1 ...
- k8s容器互联-flannel host-gw原理篇
k8s容器互联-flannel host-gw原理篇 容器系列文章 容器系列视频 简析host-gw 前面分析了flannel vxlan模式进行容器跨主机通信的原理,但是vxlan模式需要对数据包进 ...