sqlite建表语句(特别是外键问题)

2024-08-22 02:18

本文主要是介绍sqlite建表语句(特别是外键问题),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原创  sqlite建表语句(特别是外键问题)

下面图表示两个表关系:

 

//表1User_invite
create table User_invite(
Invite_id INTEGER PRIMARY KEY,     //注意:这里就代表是自动增长
user_id INTEGER,
Invite_date DATE ,
Invite_place VARCHAR(20) NOT NULL,
Invite_kind VARCHAR(20),
Invite_title VARCHAR(20),
Invite_other VARCHAR(50),
Invite_goodCount INTEGER,
Invite_talkCount VARCHAR(20),
Invite_enrollCount VARCHAR(20),
FOREIGN KEY (user_id ) REFERENCES User_info(user_id));  //注意这里:写的外键要写到最后,否则会出现Error: unknown column "user_id" in foreign key definition

故还有要先执行下面的

//必须在运行时打开, 因为 默认是关闭的
PRAGMA foreign_keys = ON;

//插入语句
insert into User_invite(user_id,Invite_date,
Invite_place,Invite_kind,
Invite_title,Invite_other,
Invite_goodCount,Invite_talkCount,
Invite_enrollCount)
values('1','2012-12-12','太原','辅导','辅导','无','1','很好','10');
//表2User_infor
create table User_info(
user_id INTEGER PRIMARY KEY,
user_name VARCHAR(50) NOT NULL ,
user_password VARCHAR(20) NOT NULL,
user_credit INTEGER,
user_sex VARCHAR(2),
user_age INTEGER,
User_constellation VARCHAR(50),
User_state INTEGER); //在线为1,离线为0 //用数字表示几颗星,为信用标志
//插入语句
insert into User_info(user_name,user_password,user_credit, user_sex,user_age,User_constellation,User_state) values('xiaoming','123','5','男','22','无','1');
insert into User_info(user_name,user_password,user_credit, user_sex,user_age,User_constellation,User_state) values('张三','123','2','男','20','无','1');

update mytab set name='liming' where birthday='1992-12-12';
update mytab set name='zhangsan' where birthday='1993-10-12';
update mytab set name='wangwu' where birthday='1993-02-12';
update mytab set name='xiaoming' where birthday='1993-11-12';

====进入Android中的数据库在cmd中敲这样的命令(注意这里首先将模拟器打开或有真实的手机)======

adb shell 

cd data/data/org.lxh.demo/databases
ls  ---->查看当前的文件 
sqlite3 xxx.db     即可

进入>sqlite 

--------------

同时也可以用 命令 “.table” 查看已经建好的表,也可以”.schema“ 查看表的结构

--------------

插入数据后结果如下:

 

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

这篇关于sqlite建表语句(特别是外键问题)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1094958

相关文章

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja

MySQL 表空却 ibd 文件过大的问题及解决方法

《MySQL表空却ibd文件过大的问题及解决方法》本文给大家介绍MySQL表空却ibd文件过大的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录一、问题背景:表空却 “吃满” 磁盘的怪事二、问题复现:一步步编程还原异常场景1. 准备测试源表与数据

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

SysMain服务可以关吗? 解决SysMain服务导致的高CPU使用率问题

《SysMain服务可以关吗?解决SysMain服务导致的高CPU使用率问题》SysMain服务是超级预读取,该服务会记录您打开应用程序的模式,并预先将它们加载到内存中以节省时间,但它可能占用大量... 在使用电脑的过程中,CPU使用率居高不下是许多用户都遇到过的问题,其中名为SysMain的服务往往是罪魁

MySQ中出现幻读问题的解决过程

《MySQ中出现幻读问题的解决过程》文章解析MySQLInnoDB通过MVCC与间隙锁机制在可重复读隔离级别下解决幻读,确保事务一致性,同时指出性能影响及乐观锁等替代方案,帮助开发者优化数据库应用... 目录一、幻读的准确定义与核心特征幻读 vs 不可重复读二、mysql隔离级别深度解析各隔离级别的实现差异

MySQL中REPLACE函数与语句举例详解

《MySQL中REPLACE函数与语句举例详解》在MySQL中REPLACE函数是一个用于处理字符串的强大工具,它的主要功能是替换字符串中的某些子字符串,:本文主要介绍MySQL中REPLACE函... 目录一、REPLACE()函数语法:参数说明:功能说明:示例:二、REPLACE INTO语句语法:参数

C++ vector越界问题的完整解决方案

《C++vector越界问题的完整解决方案》在C++开发中,std::vector作为最常用的动态数组容器,其便捷性与性能优势使其成为处理可变长度数据的首选,然而,数组越界访问始终是威胁程序稳定性的... 目录引言一、vector越界的底层原理与危害1.1 越界访问的本质原因1.2 越界访问的实际危害二、基

Python多线程应用中的卡死问题优化方案指南

《Python多线程应用中的卡死问题优化方案指南》在利用Python语言开发某查询软件时,遇到了点击搜索按钮后软件卡死的问题,本文将简单分析一下出现的原因以及对应的优化方案,希望对大家有所帮助... 目录问题描述优化方案1. 网络请求优化2. 多线程架构优化3. 全局异常处理4. 配置管理优化优化效果1.