如何在现有的SQL表中添加一个布尔数据类型的列?

24 浏览
0 Comments

如何在现有的SQL表中添加一个布尔数据类型的列?

我在我的数据库中有一个名为person的表。我想在同一表中添加另一列,它是一个布尔数据类型列。我尝试了以下查询,但是它显示语法错误,错误在于default关键字。我知道这是一个常见的问题,并且有很多答案。我尝试了很多方法,但是无法弄清楚如何使其工作。所以请帮帮我。

我尝试过的查询

ALTER TABLE person ADD COLUMN "AdminApproved" BOOLEAN DEFAULT FALSE;
ALTER TABLE person ALTER COLUMN "AdminApproved" SET DEFAULT FALSE;

我也尝试过不使用SET关键字。

0
0 Comments

如何在现有的SQL表中添加一个布尔数据类型列?

在SQL SERVER中,布尔数据类型是BIT,尽管它允许存储NULL。

解决方法:

ALTER TABLE person ADD [AdminApproved] BIT DEFAULT 'FALSE';

此外,你的查询中还有其他错误:

1. 当你修改一个表以添加列时,不需要在ALTER语句中提及column关键字。

2. 添加默认约束时,不需要使用SET关键字。

3. BIT列的默认值可以是('TRUE'或'1')/('FALSE'或0)。TRUE或FALSE需要作为字符串而不是标识符来指定。

需要注意的是,BIT不是真正的布尔类型。它允许三种状态,0、1和NULL。这是微妙但非常重要的理解。此外,你不能像布尔类型一样编写代码。

下面的代码创建了一个可为空的布尔类型列,这是正确的:

ALTER TABLE [person] ADD [AdminApproved] BIT DEFAULT 0 NOT NULL;

0
0 Comments

问题的原因是需要向现有表中添加一个布尔类型的列。解决方法是使用SQL的ALTER TABLE语句,并指定新列的名称、数据类型和属性。在这种情况下,我们需要添加一个布尔类型的列,并将其默认值设置为false。

具体的解决方法如下:

1. 使用ALTER TABLE语句来修改现有表。例如,我们可以使用以下语句来修改名为person的表:

ALTER TABLE person

2. 使用ADD关键字来指定我们要添加的新列的名称和数据类型。在这种情况下,我们要添加一个名为AdminApproved的布尔类型的列。我们可以使用BIT数据类型来表示布尔值。

ADD AdminApproved BIT

3. 使用DEFAULT关键字来设置新列的默认值。在这种情况下,我们将默认值设置为0,表示false。

DEFAULT 0

4. 使用NOT NULL关键字来指定新列不允许为空值。

NOT NULL

我们可以使用以下代码将布尔类型的列添加到现有表中:

ALTER TABLE person
ADD AdminApproved BIT
DEFAULT 0 NOT NULL;

0
0 Comments

如何在现有的SQL表中添加一个布尔类型的列?

在phpmyadmin中,如果你需要在一个现有的表中添加一个布尔类型的列,并且默认值为true:

ALTER TABLE books
   ADD COLUMN isAvailable boolean DEFAULT true;

这个问题的原因是需要在现有的SQL表中添加一个布尔类型的列,并且设置默认值为true。解决方法是使用ALTER TABLE语句,并使用ADD COLUMN子句来添加新的列。在这个例子中,我们将新列命名为isAvailable,并将数据类型设置为布尔类型boolean。使用DEFAULT子句来设置默认值为true。

0