DB2 为已有数据的表新增主键列并插入主键数据
时间: 2024-02-16 14:03:38 浏览: 260
要为已有数据的表新增主键列并插入主键数据,需要执行以下步骤:
1. 首先,在表中新增一个主键列,例如:
```
ALTER TABLE table_name ADD COLUMN id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1);
```
这将在表中新增一个名为“id”的整数类型列,并且自动生成唯一的主键值。
2. 接着,需要更新表中已有的数据,为每一行新增主键值。可以使用以下 SQL 语句:
```
UPDATE table_name SET id = DEFAULT;
```
这将为表中每一行新增一个自动生成的主键值。
3. 最后,可以测试主键列是否正常工作,例如:
```
SELECT * FROM table_name;
```
这将显示表中的所有数据,包括新增的主键列。
相关问题
db2为已有数据的表新增主键列并插入主键列数据
要为已有数据的表新增主键列并插入主键列数据,需要执行以下步骤:
1. 首先,在表中新增一个主键列,例如:
```
ALTER TABLE table_name ADD COLUMN id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1);
```
这将在表中新增一个名为“id”的整数类型列,并且自动生成唯一的主键值。
2. 接着,需要更新表中已有的数据,为每一行新增主键值。可以使用以下 SQL 语句:
```
UPDATE table_name SET id = DEFAULT;
```
这将为表中每一行新增一个自动生成的主键值。
3. 最后,可以测试主键列是否正常工作,例如:
```
SELECT * FROM table_name;
```
这将显示表中的所有数据,包括新增的主键列。
db2为已有数据表新增主键列
在 DB2 中,要为已有的数据表新增一个主键列,可以使用以下 SQL 语句:
```
ALTER TABLE table_name ADD COLUMN id INTEGER NOT NULL PRIMARY KEY;
```
这将在表中新增一个名为“id”的整数类型列,并将其设置为主键列。
如果需要在新增的列中设置默认值,可以使用 DEFAULT 关键字。例如,要设置“id”的默认值为“default_value”,可以使用以下 SQL 语句:
```
ALTER TABLE table_name ADD COLUMN id INTEGER NOT NULL PRIMARY KEY DEFAULT 'default_value';
```
这将在表中新增一个名为“id”的整数类型列,并将其设置为主键列,并设置默认值为“default_value”。
如果表中已经存在数据,则需要先使用 UPDATE 语句为新增的列插入主键值。例如:
```
UPDATE table_name SET id = ROW_NUMBER() OVER ();
```
这将为表中每一行新增一个唯一的主键值。
最后,可以通过 SELECT 语句验证新增列的结果,例如:
```
SELECT * FROM table_name;
```
这将显示表中的所有数据,包括新增的列。
阅读全文