数据库管理

创建数据库,创建完成之后自动进入

[root@localhost ~]# sqlite3 /www/wwwroot/task.db

使用数据库,如果 /www/wwwroot 路径下面没有task.db这个数据库,则会自动创建数据库

[root@localhost ~]# sqlite3 /www/wwwroot/task.db

其他命令

sqlite> .databases               # 查看数据库列表
sqlite> .quit # 退出 sqlite 提示符

表管理

每一个 SQLite 数据库都有一个叫 SQLITE_MASTER 的表, 里面存储着数据库的数据结构(表结构、视图结构、索引结构等),只可以对它使用查询语句,即SQLITE_MASTER 表是只读的。SQLITE_MASTER 表DDL信息如下:

CREATE TABLE sqlite_master (type TEXT, name TEXT, tbl_name TEXT, rootpage INTEGER, sql TEXT);

type:类型(如表、视图、索引等) name:名称   tbl_name:所属表名称   SQL:(表、视图、索引)的DDL语句。

创建表

sqlite> create table tb_user(
...> id INTEGER PRIMARY KEY,
...> name TEXT,
...> time TEXT
...> );

查看所有表

-- 对于表来说,type 字段永远是 'table',name 字段永远是表的名字。所以,要获得数据库中所有表的列表, 使用下列SELECT语句:
sqlite> SELECT name FROM sqlite_master WHERE type='table' ORDER BY name; -- 方法1
sqlite> .table -- 方法2 -- 对于索引来说,type 等于 'index', name 则是索引的名字,tbl_name 是该索引所属的表的名字, 使用下列SELECT语句:
sqlite> SELECT name FROM sqlite_master WHERE type='index' ORDER BY name; -- 对于视图来说,type 等于 'view', name 则是视图的名字,tbl_name 是该视图所属的表的名字, 使用下列SELECT语句:
sqlite> SELECT name FROM sqlite_master WHERE type='view' ORDER BY name;

检查某个表是否存在

sqlite> SELECT name FROM sqlite_master WHERE type='table' AND name='表名';
sqlite> SELECT name FROM sqlite_master WHERE type='table' AND name='tb_task';
sqlite> SELECT count(*) FROM sqlite_master WHERE type='table' AND name='tb_task';

查看某个表的完整创建信息

sqlite> .schema 表名
sqlite> .schema tb_task

查看某个表的所有字段信息

sqlite> PRAGMA table_info(表名);
sqlite> PRAGMA table_info(tb_task);

删除表

sqlite> drop table tb_task;             -- 方法1
sqlite> drop table if exists tb_task; -- 方法2

重命名表

sqlite> alter table tb_task rename to tb_user;   -- 将表tb_task重命名为tb_user

新增列、删除列、重命名列

-- 新增列
sqlite> alter table tb_task add column username TEXT; -- 删除列,A表有x,y,z三列,现在删除x列
sqlite> create table B as select y,z from A
sqlite> drop table if exists A -- 将A表删除
sqlite> alter table B rename to A -- 将B表重命名为A

  

Sqlite—数据库管理与表管理的更多相关文章

  1. Mysq基础l数据库管理、表管理、增删改数据整理

    一.       数据库管理: 创建数据库: create database(自定义) 查询所有数据库: show databases;(查询所有数据库) show create database ( ...

  2. Mysql—数据库管理与表管理

    数据库管理 表管理 删除表

  3. Sqlite数据库管理(SQLite Developer) v4.0.0.528 中文版+破解方法(申明:来源于网络)

    Sqlite数据库管理(SQLite Developer) v4.0.0.528 中文破解版 SharpPlus Sqlite Developer 特性: -强大的SQL编辑器 *Sqlite Sql ...

  4. Cocos2d-x中SQLite数据库管理工具

    数据库创建完成后,我们可能需要看看数据库中数据是否成功插入,很多人喜欢使用图形界面工具来管理SQLite数据库.SQLite图形界面管理工具有很多,我推荐使用SQLiteStudio工具,下载地址ht ...

  5. 基本 SQL 之数据库及表管理

    上篇文章,我们基于『数据库』做了一个宏观上的介绍,你应当了解到数据库是在何种背景下,为了解决什么样的问题而诞生的,以及在具体实现下又可以划分哪些中类型. 非关系型数据库的种类很多,我们会在后续的篇章中 ...

  6. Storm——Android SQLite数据库管理类库

    Storm是一个Android SQLite数据库管理类库,可以通过注解创建表和迁移数据库.它不是ORM框架.   特性: 1.通过@Annotations创建表: 2.通过@Annotations迁 ...

  7. mysql基础之mariadb库管理和表管理语句

    一.数据库管理语句 1.Syntax: CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_specification] ... cr ...

  8. OracleDBA之表管理

    下面是Oracle表管理的部分,用到的测试表是oracle数据库中scott用户下的表做的测试,有的实验也用到了hr用户的数据,以下这些东西是我的麦库上存的当时学Oracle的学习笔记今天拿出来和大家 ...

  9. SNF开发平台WinForm之四-开发-主细表管理页面-SNF快速开发平台3.3-Spring.Net.Framework

    4.1运行效果: 4.2开发实现: 4.2.1          有了第一个程序的开发,代码生成器的配置应该是没有问题了,我们只要在对应的数据库中创建我们需要的表结构就可以了,如下: 主表结构如下: ...

随机推荐

  1. border-radius:50%和100%的区别

    border-radius 值类型-百分比 border-radius的值是百分比的话,就相当于盒子的宽度和高度的百分比. 我们知道在一个正方形内做一个面积最大的圆形,这个圆的半径就为正方形边长的一半 ...

  2. 分布式监控数据采集系统Ganglia实战

    一.什么是Ganglia 对于这个工具,大家可能比较陌生,但是它功能非常强大,如果我们想收集所有服务器.网络设备的数据,那么ganglia绝对是首选,在深入学习之前,还是先从基础概念了解起吧! Gan ...

  3. 踩坑了!使用 @Autowired 注入成功,GetBean 方法却获取不到?!

    本文首发于个人微信公众号:Coder小黑 踩坑了?! 之前推文已经讲过 当@Transactional遇到@CacheEvict,你的代码是不是有bug! 现在要在事务提交之后清除缓存.在Spring ...

  4. 【Vuejs】397- Vue 3最值得期待的五项重大更新

    作者|Filip Rakowski 译者|王强 编辑|王文婧 最近关于即将发布的 Vue.js 的第 3 个大版本的消息越来越密集.虽然本文所讨论的内容还没有完全确定下来,但作者已经可以肯定它将是对当 ...

  5. Linux(CentOS)安装SQL Server

    1.下载Microsoft SQL Server Red Hat 存储库配置文件 curl -o /etc/yum.repos.d/mssql-server.repo https://packages ...

  6. HTML真零基础教程

    这是为完全没有接触过的童鞋写的,属于真正的傻瓜式教程,当然由于本人也不是什么大佬,可能有些知识的理解与自己想的不一样,如果有大佬看到,还请帮我指出.以下主要是HTML5的基础标签的使用. 开发前的准备 ...

  7. android studio 软件常见问题

    xml文件没有智能提示 在网上看到说是去掉省电模式就可以了 然后我试了一下并不能解决, 最终我是这么解决的

  8. 解决问题的能力 > 10倍程序员

    如果第二次看到我的文章,欢迎右侧扫码订阅我哟~ 

  9. 如何为.NETCore安装汉化包智能感知

    引言 具体不记得是在群里还是什么地方有人问过,.NETCore有没有汉化包,答案是有,目前微软已经为我们提供了.NETCore多种语言的语言包.下面看看如何安装与使用吧. 在哪下载? 在微软官方下载 ...

  10. CodeForces - 556D Case of Fugitive (贪心+排序)

    Andrewid the Android is a galaxy-famous detective. He is now chasing a criminal hiding on the planet ...