Oracle에서는 "alter table" 문을 사용하여 테이블 필드 유형을 수정할 수 있습니다. 이 문의 기능은 원래 테이블의 구조를 변경하는 것입니다. 구문은 "alter table table name 수정(필드 이름 새 유형)입니다. 이름);" 진술.
이 튜토리얼의 운영 환경: Windows 7 시스템, Oracle 11g 버전, Dell G3 컴퓨터.
tb라는 테이블, name이라는 필드 세그먼트, nchar(20) 데이터 유형이 있습니다.
1 필드 데이터가 비어 있다고 가정하면 어떤 필드 유형이 변경되더라도 직접 실행할 수 있습니다.
alter table tb modify (name nvarchar2(20));
2. 필드에 데이터가 있다고 가정하면 nvarchar2로 변경하여 직접 실행할 수 있습니다. (20):
alter table tb modify (name nvarchar2(20));
3.필드에 데이터가 있다고 가정하고 varchar2(40)로 변경하면 다음과 같은 팝업이 표시됩니다. "ORA-01439: To Change the data type, the Column to be Modified must beempt". 이 경우 이 문제를 해결하려면 다음 방법을 사용해야 합니다. :
/*원래 필드 이름을 name_tmp로 수정*/
alter table tb rename column name to name_tmp;
/*원래 필드와 이름이 같은 필드 이름 추가 name*/
alter table tb add name varchar2(40);
/*원래 필드 name_tmp 데이터를 추가된 필드 이름으로 업데이트*/
update tb set name=trim(name_tmp);
/*업데이트 후 원래 필드 name_tmp 삭제*/
alter table tb drop column name_tmp;
--添加新的字段 alter table lyz_emp add(e_age number(3)); --添加多个新的字段 alter table lyz_emp add( e_age number(3), e_age_tmp,varchar2(20)); --获取表字段: select * from user_tab_columns where Table_Name='lyz_emp' order by column_name --删除表中的字段 alter table lyz_emp drop column e_age;
추천 튜토리얼: "Oracle Tutorial"
위 내용은 Oracle에서 테이블 필드 유형을 수정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!