SQLite数据类型:
三种数据类型:1.分别是专门用来表示 整数 的 INTEGER,以及用来表示带小数点的数字,也就是 浮点数 的 REAL。整数、浮点数类型,
2.用来表示 文本 类型信息的 TEXT 类型
SO,得出两个规律:1.储存可以进行加减乘除等运算的数值时,最好使用 INTEGER 和 REAL 类型;
2.储存具含义的文字信息时,哪怕文字信息全由数字组成,也应当使用 TEXT 类型。
PS:如果录入数据时,忘记输入了一些值,这个值会被 SQLite 记作 NULL,属于 NULL 类型(也被称为 空值。若一行中如果存在一个或多个空值,则被称为 含空值行。)。如果录入数据时,忘记输入了一些值,这个值会被 SQLite 记作 NULL,属于 NULL 类型。
例子:
但是同时而如果创建数据表时,没指定某列属于什么数据类型,SQLite 会默认它为 BLOB 类型,原封不动地进行存储。(如果某列被划分成了 BLOB 类型,在计算机看来,它既不属于数字,也不是普通意义上的文本,因此几乎无法对它进行计算、处理、分析。)
SQLite 中有这样两种日期和时间的表示方式:
TEXT文本表示时间来用
整数表示时间用INTGER类型,其中原理:INTEGER 整数类型表示的时间,其实是计算机世界里一种特殊的时间格式——Unix 时间戳。它表示从 1970 年 1 月 1 日午夜开始直到现在某一时刻所经过的秒数。比如 2021 年 1 月 1 日午夜的 Unix 时间戳是 1609430400。
实操教学
① SELECT ... FROM ... 子句
SELECT(选择一个或者若干个字段)
PS:字段 和 列,这两个词基本意义相同。在描述原数据表时,老师会用 列 来形容;其它情况下,会用 字段 来表示。“--
PS:
FROM staff 后面一个英文的分号 ;。分号 在 SQL 中表示一条 SQL 语句的结束,所以每当写完一条 完整 的 SQL 语句,需要在末尾加上分号,与其它的语句进行区分。
用“--”标记的部分是注释内容,不会被执行。课程中将使用注释,来解释代码、做出提示等等。
多种选择时:列名与列名之间用英文逗号,(最好再加个空格)隔开即可,但是最后一个列名不要加
所有选择时:上面两行代码表示从数据表 staff 中择 所列,第一行中的符号 * 表示“所” 的含义。
总结:
DISTINCT(紧跟SELECT关键字后面)关键字(只保留首次出现的组合)
例子:SELECT DISTINCT department
FROM staff;
SQL 语法规则小结
从“词语”角度来说,SQL 中有很多具有特殊含义、能完成指定功能的 关键字:
这些关键字就像拼图碎片,要照一定的顺序拼接在一起,才能构成正确的 SQL 语句。我们目前解锁的关键字,在 SQL 语句中的顺序是这样的:
总结:
SQL 是 不区分大小写 的,但我们推荐关键字 大写,从而与表名、列名等信息区分开来;
SQL 是 忽略空格与换行 的,但我们推荐一条子句占据一行(若子句过长也可根据情况换行),使代码结构更清晰;
一条完整的 SQL 语句后,需要加上一个英文分号 ;,表明语句的结束。
对于SQL 语法规则做了简单总结,在编写过程中我们需要注意以下三条: