表注释和字段注释为什么没复制过去
时间: 2024-03-27 21:35:39 浏览: 13
在使用CREATE TABLE AS SELECT语句复制表时,表注释和字段注释通常不会自动复制过去,因为这些注释是存储在系统数据字典表中的元数据信息,而不是存储在表数据本身中的。
如果需要复制表注释和字段注释,可以使用以下方法:
1. 在目标用户下使用CREATE TABLE语句手动创建一个新表,并使用与源表相同的列名和数据类型,然后使用COMMENT语句为新表和每个字段添加注释:
```
CREATE TABLE target_user.new_table (
column1 datatype,
column2 datatype,
...
);
COMMENT ON TABLE target_user.new_table IS 'Table comment';
COMMENT ON COLUMN target_user.new_table.column1 IS 'Column1 comment';
COMMENT ON COLUMN target_user.new_table.column2 IS 'Column2 comment';
...
```
2. 在源用户下使用INSERT INTO语句将所有数据复制到新表中:
```
INSERT INTO target_user.new_table
SELECT * FROM source_user.source_table;
```
这种方法可以完整地复制表和字段注释,但需要手动创建新表和添加注释,比较繁琐。