Как изменить размер столбца

Я создал таблицу Test_Project2 в Oracle SQL Developer. После этого я понял, что столбец proj_name имеет небольшой размер, поэтому я решил изменить столбец, используя следующую инструкцию

ALTER TABLE TEST_PROJECT2 MODIFY proj_name VARCHAR2(300);

но по какой-то причине Oracle SQL Developer подчеркивает точку с запятой красным, а я не делаю, что является ошибкой и как ее исправить

Test_Project2:

CREATE TABLE Test_Project2 (
proj_id number(30),
proj_name VARCHAR2 (30),
proj_desc VARCHAR2(300)
);

2 ответа

Независимо от того, какую ошибку Oracle SQL Developer может указать при выделении синтаксиса, на самом деле alter Заявление точно так, как у вас изначально было отлично работает:

ALTER TABLE TEST_PROJECT2 MODIFY proj_name VARCHAR2(300);

Вам нужно добавить скобки, только если вам нужно изменить более одного столбца одновременно, например:

ALTER TABLE TEST_PROJECT2 MODIFY (proj_name VARCHAR2(400), proj_desc VARCHAR2(400));

Если вы запустите его, он будет работать, но для того, чтобы SQL Developer мог распознать и не предупредить о возможной ошибке, вы можете изменить его следующим образом:

ALTER TABLE TEST_PROJECT2 MODIFY (proj_name VARCHAR2(300));

Это было сделано с помощью Toad для Oracle 12.8.0.49

ALTER TABLE SCHEMA.TABLENAME 
    MODIFY (COLUMNNAME NEWDATATYPE(LENGTH)) ;
    COMMIT ;

Например,

ALTER TABLE PAYROLL.EMPLOYEES 
    MODIFY (JOBTITLE VARCHAR2(12)) ;
    COMMIT ; 
Другие вопросы по тегам