如何将布尔数据类型列添加到 sql 中的现有 table?

How to add a boolean datatype column to an existing table in sql?

我的数据库中有一个名为 person 的 table。我想 向同一个 table 添加另一列,它是布尔数据类型的列 。我尝试了以下查询,但它说 syntax error near default。我知道这很常见,并且有很多答案。我已经尝试了很多,但无法弄清楚如何让它发挥作用。所以请帮助我。

我试过的问题

ALTER TABLE person add column "AdminApproved" BOOLEAN SET default FALSE;
ALTER TABLE person alter column "AdminApproved" BOOLEAN SET default FALSE;         

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

在 SQL 服务器中它是 BIT,尽管它允许存储 NULL

ALTER TABLE person add  [AdminApproved] BIT default 'FALSE';

您的查询还有其他错误

  1. 当您更改 table 以添加列时,无需在 alter 语句

  2. 中提及 column 关键字
  3. 添加默认约束不需要使用SET关键字

  4. BIT 列的默认值可以是 ('TRUE' or '1') / ('FALSE' or 0)TRUEFALSE 需要提及为 string 而不是标识符

Pரதீப் 给出的答案创建了一个可为空的布尔值,而不是布尔值,这可能适合您。例如在 C# 中它会创建:bool? AdminApprovednot bool AdminApproved.

如果需要创建bool(默认为false):

    ALTER TABLE person
    ADD AdminApproved BIT
    DEFAULT 0 NOT NULL;

在 phpmyadmin 中,如果您需要将布尔数据类型列添加到现有的 table,默认值为 true:

ALTER TABLE books
   isAvailable boolean default true;

以下查询对我有效,默认值为 false;

ALTER TABLE cti_contract_account ADD ready_to_audit BIT DEFAULT 0 NOT NULL;