alter table是ANSI SQL,所以每个数据库都可以这样写. 不过类型每个数据库就不一样了, 例如sqlserver中没有varchar2这个类型
ORACLE: ALTER TABLE MYTABLENAME MODIFY MYFIELDNAME VARCHAR2(12);//修改 ALTER TABLE MYFIELDNAME ADD MYFIELDNAME VARCHAR2(12);//新增SQL SERVER ALTER TABLE MYTABLENAME alter column MYFIELDNAME char(10);//修改 ALTER TABLE MYFIELDNAME ADD COLUMN MYFIELDNAME VARCHAR(12);//新增DB2 : ALTER TABLE MYFIELDNAME ADD COLUMN MYFIELDNAME VARCHAR(12);//新增 ALTER TABLE MYTABLENAME alter MYFIELDNAME set data type varchar(25);//修改,只有varchar类型的字段可以修改,而且只能改长了,不能改短了oracle ,sql server, db2 都满足t-sql标准,只是实现标准的方式不一致
ORACLE 可以这样写,那其他数据库可以这样写吗?
不过类型每个数据库就不一样了, 例如sqlserver中没有varchar2这个类型
ALTER TABLE MYTABLENAME MODIFY MYFIELDNAME VARCHAR2(12);//修改
ALTER TABLE MYFIELDNAME ADD MYFIELDNAME VARCHAR2(12);//新增SQL SERVER
ALTER TABLE MYTABLENAME alter column MYFIELDNAME char(10);//修改
ALTER TABLE MYFIELDNAME ADD COLUMN MYFIELDNAME VARCHAR(12);//新增DB2 :
ALTER TABLE MYFIELDNAME ADD COLUMN MYFIELDNAME VARCHAR(12);//新增
ALTER TABLE MYTABLENAME alter MYFIELDNAME set data type varchar(25);//修改,只有varchar类型的字段可以修改,而且只能改长了,不能改短了oracle ,sql server, db2 都满足t-sql标准,只是实现标准的方式不一致