SQLite 在SQLite中设置列的默认值

SQLite 在SQLite中设置列的默认值

在本文中,我们将介绍如何在SQLite数据库中设置列的默认值。SQLite是一个嵌入式关系型数据库管理系统,被广泛应用于移动设备和嵌入式系统中。

阅读更多:SQLite 教程

什么是默认值

默认值是当没有显式指定值时,被赋予给数据库表中某一列的值。当插入新记录时,如果没有指定该列的值,数据库会自动填充默认值。默认值可以是一个固定值,也可以是一个表达式。

在创建表时设置默认值

在创建表时,可以通过使用DEFAULT关键字来设置列的默认值。例如,我们创建一个名为Employees的表,其中包含列ID、Name、Age和Salary,Salary列的默认值为5000:

CREATE TABLE Employees (
    ID INTEGER PRIMARY KEY,
    Name TEXT,
    Age INTEGER,
    Salary REAL DEFAULT 5000
);

在这个例子中,如果在插入新记录时没有指定Salary的值,数据库会将其默认设置为5000。

修改表结构添加默认值

如果已经创建了一个表,但是想要为一个某列添加默认值,可以使用ALTER TABLE语句。

例如,我们想要向上述的Employees表中添加一个Phone列,并且将Phone列的默认值设置为NULL:

ALTER TABLE Employees ADD COLUMN Phone TEXT DEFAULT NULL;

在这个例子中,如果在插入新记录时没有指定Phone的值,数据库会将其默认设置为NULL。

修改默认值

如果想要修改已有列的默认值,同样可以使用ALTER TABLE语句。

假设我们想要将Employees表中Salary列的默认值修改为6000:

ALTER TABLE Employees ALTER COLUMN Salary SET DEFAULT 6000;

删除默认值

如果想要删除已有列的默认值,同样可以使用ALTER TABLE语句。

假设我们想要删除Employees表中Salary列的默认值:

ALTER TABLE Employees ALTER COLUMN Salary DROP DEFAULT;

示例

为了更好地理解如何在SQLite中设置列的默认值,我们来看一个示例。

假设我们有一个名为Products的表,其中包含列ID、Name和Price。我们希望Name列的默认值为”Unknown”,Price列的默认值为0。

首先,我们创建这个表并设置默认值:

CREATE TABLE Products (
    ID INTEGER PRIMARY KEY,
    Name TEXT DEFAULT "Unknown",
    Price REAL DEFAULT 0
);

然后,我们插入几条记录来验证默认值是否生效:

INSERT INTO Products (ID, Name, Price) VALUES (1, "Apple", 2.5);
INSERT INTO Products (ID, Name) VALUES (2, "Orange");
INSERT INTO Products (ID, Price) VALUES (3, 1.5);
INSERT INTO Products (ID) VALUES (4);

在这个示例中,当没有指定Name和Price的值时,它们将会被设置为默认值。因此,第二条插入语句中的Name列为”Unknown”,第三条插入语句中的Price列为0。

总结

通过本文,我们学习了在SQLite中设置列的默认值的方法。我们可以在创建表时设置默认值,也可以通过ALTER TABLE语句来添加、修改或删除默认值。通过合理设置默认值,可以简化数据库操作并提高数据的完整性。SQLite提供了丰富的选项来满足各种需求,使得开发者能够更好地管理和操作数据。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程