使用SQLiteExpertProfessional工具测试SQL语句

先上软件下载链接:SQLiteExpertProfessional
打开以后页面如下:
在这里插入图片描述

创建数据库

点击File – New Datebase,输入数据库的名字,创建一个数据库
在这里插入图片描述

创建表

常见表有两种方式,一种是直接在使用SQL语句来创建表,一种是直接右键数据库图标然后选择 New Table。先说第一种方式,这种方式一般使我们实际开发中使用的。

第一种方式:

点击右边的SQL标签,进入输入 SQL 语句的标签页面,输入创建表的 SQL 语句,然后点击下方的 Execute SQL 按钮,一张数据库表就建好了,如下图
在这里插入图片描述

通过我的 SQL 语句可以看出,我的id是主键并且自增的。

执行完 SQL 以后,点击对应的表,然后点击右边的 Date 标签,就可以看到你创建的表了,如下图
在这里插入图片描述

第二中方式创建表:

1)创建表名

在创建好的数据库上右键 – New Table,然后在跳出的页面中输入表的名字,如下图,我创建了test_table_two
在这里插入图片描述

2)创建字段

在上面填写完表名以后,点击上面的 Fields 标签,然后点击下面的 Add 按钮,开始创建字段,输入字段的名称,然后选择字段的类型即可,然后点击下方的 Apply 按钮,表就创建好了。如下图
在这里插入图片描述

3)创建主键

创建好表之后,如果需要设置主键还要再操作一下,同样在刚才的 Design 标签下,点击 Indexes 标签,然后点击 Add 按钮,弹出如下页面
在这里插入图片描述

然后点击你要设置的主键的字段,然后点击 Add 按钮,这个字段就会跳转到右边,然后选中上面的 Primary 和 Autoincrement ,然后点击 OK ,如下图
在这里插入图片描述

最后,再点击 Apply 按钮,让设置生效,这样主键和自增属性就创建完成了。

执行SQL语句

在 SQL 标签中输入你要测试的 SQL 语句然后执行,就可以看到你的测试结果了。

UNIQUE 约束

约束一个字段

在实际使用sqllite数据库的时候,我们有时候会控制某一个字段的唯一性,这个时候就需要使用到UNIQUE关键字,例子如下

CREATE TABLE IF NOT EXISTS test_table (_id integer primary key autoincrement,app_pkg_name TEXT UNIQUE ,app_version TEXT )

上面这句sql创建了一个表,里面有三个字段,_id为主键,app_pkg_name和app_version,其中app_pkg_name被UNIQUE修饰,表示在这张表中,app_pkg_name这个字段中的是唯一的,第二次插入的数据,如果app_pkg_name列中已经存在了会插入失败

约束两个字段

当约束两个字段的时候,同理,就是第二次插入的数据,会去对比表中被UNIQUE约束的两个字段列中的数据,只要其中一个字段已经存在了,就插入不进去了

比如上面的sql,同时约束app_pkg_name和app_version,如下:

CREATE TABLE IF NOT EXISTS test_table (_id integer primary key autoincrement,app_pkg_name TEXT UNIQUE ,app_version TEXT UNIQUE )

当插入数据的时候,如果app_pkg_name 列已经有了相同的数据则插入失败,或者如果app_version列已经有了相同的数据也会插入失败,即:两个被UNIQUE约束的字段,只有有一个字段存在相同的数据,都会插入失败

同时约束两个字段

有时我们还有这样的需求,就是只有当app_pkg_name 和app_version 这两个字段的内容同时相同的时候,我们才不允许插入,这种情况的sql如下:

CREATE TABLE IF NOT EXISTS test_table (_id integer primary key autoincrement,app_pkg_name TEXT,app_version TEXT,UNIQUE (app_pkg_name  ,app_version))

这样创建的表就满足了只有当两个字段同时相同的时候才不允许插入,两个字段同时确定唯一性。

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值