sqlite - 将值设置为未知工资

标签 sqlite

我使用的是sqlite3在线编译。我想创建一个表,其中一名员工的工资值未知。

这是我的 sqlite3 代码。

John Doe 在 Burger Steak 工作,但他的薪水未知。

BEGIN TRANSACTION;
/* Create a table called Works */
CREATE TABLE Works(employee_name text, company_name text, salary varchar);
/* Create few records in this table */
INSERT INTO Works VALUES('John Smith', 'Starbucks Coffee', '2000 USD');
INSERT INTO Works VALUES('Peter Cruz', 'Mc Donalds', '3000 USD');
INSERT INTO Works VALUES('John Doe', 'Burger Steak', '');
COMMIT;

输出为

John Smith|Starbucks Coffee|2000 USD
Peter Cruz|Mc Donalds|3000 USD
John Doe|Burger Steak|

我这样做对吗?薪资未知是否应该留空? NULL 值怎么样,我如何在这里应用它。

最佳答案

对于未知或不适用的值,您应该使用 NULL。为此,您将拥有类似以下内容:

INSERT INTO Works (
    employee_name,
    company_name,
    salary
) VALUES (
    'John Doe',
    'Burger Steak',
    NULL
);

如果您打算使用数字字段进行计算,那么您可能还应该使用数字字段来表示数值(例如工资)。

关于sqlite - 将值设置为未知工资,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26211886/

相关文章:

python - 将 Django 开发数据库从默认的 SQLite 更改为 PostgreSQL

sqlite - 在 SQLite 数据库中解码 BLOB

java - 使用android将Intent存储在SQLite数据库中

ruby - sqlite3 gem的#execute和#query方法的返回值

android - 尝试在android中解密加密数据库时出现"File is encrypted or is not a database"错误

sql - 如何将个位数值转换为sqlite3支持的日期格式? [ 值 0 填充]

java - 正确为具有未知值的 SQL MATCH 准备的语句

android - 使用新列更新现有数据库表在 Activity android 中不起作用

ios - CoreData 限制相关实体的批量大小

python - HDF5 - 并发、压缩和 I/O 性能