In Oracle können Sie die Anweisung „alter table“ verwenden, um den Tabellenfeldtyp zu ändern. Die Funktion dieser Anweisung besteht darin, die Struktur der ursprünglichen Tabelle zu ändern Name);“-Anweisung.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, Oracle 11g-Version, Dell G3-Computer.
Es gibt eine Tabelle mit dem Namen tb, ein Feldsegment mit dem Namen name und einen Datentyp von nchar(20).
1. Vorausgesetzt, dass die Felddaten leer sind, kann sie unabhängig vom Feldtyp direkt ausgeführt werden:
alter table tb modify (name nvarchar2(20));
2. Vorausgesetzt, das Feld enthält Daten, kann es direkt durch Ändern in nvarchar2 ausgeführt werden (20):
alter table tb modify (name nvarchar2(20));
3. Angenommen, das Feld enthält Daten, wenn es in varchar2(40) geändert wird, wird Folgendes angezeigt: „ORA-01439: Um den Datentyp zu ändern, muss die Spalte geändert werden.“ muss leer sein". In diesem Fall sollte die folgende Methode verwendet werden, um dieses Problem zu lösen:
/*Ändern Sie den ursprünglichen Feldnamen in name_tmp*/
alter table tb rename column name to name_tmp;
/*Fügen Sie einen Feldnamen mit demselben Namen wie das ursprüngliche Feld hinzu name*/
alter table tb add name varchar2(40);
/*Aktualisieren Sie die ursprünglichen Feldnamen_tmp-Daten auf den hinzugefügten Feldnamen*/
update tb set name=trim(name_tmp);
/*Löschen Sie nach der Aktualisierung das ursprüngliche Feld 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;
Empfohlenes Tutorial: „Oracle Tutorial“
Das obige ist der detaillierte Inhalt vonSo ändern Sie den Tabellenfeldtyp in Oracle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!