Oracle表字段的增删改
在Oracle数据库中,我们可以通过ALTER TABLE语句来进行表字段的增删改。
1. 表字段的添加
我们可以通过以下SQL语句,在指定表中添加一个新的字段:
ALTER TABLE <table_name> ADD <column_name> <data_type> [DEFAULT <default_value>] [NOT NULL];
其中,<table_name>
表示要修改的表名,<column_name>
表示要添加的新字段名,<data_type>
表示要添加的新字段的数据类型,[DEFAULT <default_value>]
表示可以指定新字段的默认值,[NOT NULL]
表示新字段是否可以为空。例如,我们可以向表EMPLOYEE
中添加一个名为AGE
的新字段,数据类型为NUMBER
,默认值为0:
ALTER TABLE EMPLOYEE ADD AGE NUMBER DEFAULT 0;
2. 表字段的删除
我们可以通过以下SQL语句,删除指定表中的一个字段:
ALTER TABLE <table_name> DROP COLUMN <column_name>;
其中,<table_name>
表示要修改的表名,<column_name>
表示要删除的字段名。例如,我们可以在表EMPLOYEE
中删除名为NAME
的字段:
ALTER TABLE EMPLOYEE DROP COLUMN NAME;
3. 表字段的修改
我们可以通过以下SQL语句,修改指定表中一个已有字段的数据类型和默认值:
ALTER TABLE <table_name> MODIFY <column_name> <new_data_type> [DEFAULT <new_default_value>] [NOT NULL];
其中,<table_name>
表示要修改的表名,<column_name>
表示要修改的字段名,<new_data_type>
表示要修改的字段的新数据类型,[DEFAULT <new_default_value>]
表示可以指定新字段的新默认值,[NOT NULL]
表示新字段是否可以为空。例如,我们可以在表EMPLOYEE
中修改名为AGE
的字段的数据类型为VARCHAR2(10)
,并将默认值修改为'未知'
:
ALTER TABLE EMPLOYEE MODIFY AGE VARCHAR2(10) DEFAULT '未知';
表的重命名
在Oracle数据库中,我们可以通过RENAME语句来重命名一个表。
我们可以通过以下SQL语句,将一个表重命名为另一个表:
RENAME <old_table_name> TO <new_table_name>;
其中,<old_table_name>
表示要重命名的已有表名,<new_table_name>
表示新的表名。例如,我们可以将表EMPLOYEE
重命名为STAFF
:
RENAME EMPLOYEE TO STAFF;
主键的增删改
在Oracle数据库中,我们可以通过ALTER TABLE语句来进行主键的增删改。
1. 主键的添加
我们可以通过以下SQL语句,在指定表中添加一个新的主键:
ALTER TABLE <table_name> ADD CONSTRAINT <constraint_name> PRIMARY KEY (<column_list>);
其中,<table_name>
表示要添加主键的表名,<constraint_name>
表示添加的主键约束名,<column_list>
表示主键列的列表。例如,我们可以向表EMPLOYEE
中添加一个名为EMPLOYEE_ID_PK
的主键约束,列为ID
:
ALTER TABLE EMPLOYEE ADD CONSTRAINT EMPLOYEE_ID_PK PRIMARY KEY (ID);
2. 主键的删除
我们可以通过以下SQL语句,删除指定表中的一个主键:
ALTER TABLE <table_name> DROP PRIMARY KEY;
其中,<table_name>
表示要删除主键的表名。例如,我们可以在表EMPLOYEE
中删除主键约束:
ALTER TABLE EMPLOYEE DROP PRIMARY KEY;
3. 主键的修改
我们可以通过以下SQL语句,修改指定表中的主键名称和列:
ALTER TABLE <table_name> RENAME CONSTRAINT <old_constraint_name> TO <new_constraint_name>;
ALTER TABLE <table_name> MODIFY CONSTRAINT <constraint_name> PRIMARY KEY (<column_list>);
其中,<table_name>
表示要修改主键的表名,<old_constraint_name>
表示原来的主键约束名,<new_constraint_name>
表示新的主键约束名,<constraint_name>
表示要修改的主键约束名,<column_list>
表示主键列的列表。例如,我们可以在表EMPLOYEE
中将原来的主键EMPLOYEE_ID_PK
重命名为EMP_ID_PK
,并将主键列修改为ID
和DEPARTMENT_ID
:
ALTER TABLE EMPLOYEE RENAME CONSTRAINT EMPLOYEE_ID_PK TO EMP_ID_PK;
ALTER TABLE EMPLOYEE MODIFY CONSTRAINT EMP_ID_PK PRIMARY KEY (ID, DEPARTMENT_ID);
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Oracle表字段的增删改、表的重命名及主键的增删改 - Python技术站