Sql--列操作

Posted 腾逸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql--列操作相关的知识,希望对你有一定的参考价值。

Oracle的列操作(增加列,修改列,删除列),包括操作多列

增加一列:

   alter table emp4 add test varchar2(10);

修改一列:

   alter table emp4 modify test varchar2(20);

删除一列:

alter table emp4 drop column test;

 

  这里要注意几个地方,首先,增加和修改列是不需要加关键字COLUMN,否则会报错ora-00905。

  其次,对删除单列的话,一定要加COLUMN,然后记住,删除是不需要加列类型的。

 

增加多列:

   alter table emp4 add (test varchar2(10),test2 number);

修改多列:

   alter table emp4 modify (test varchar2(20),test2 varchar2(20));

删除多列:

   alter table emp4 drop (test,test2);

很奇怪的现象,再单列中要加关键字COLUMN,然而再删除多列的时候,不能加COLUMN关键字。

 

 

 

 

mysql 添加列,修改列,删除列

ALTER TABLE:添加,修改,删除表的列,约束等表的定义。

    查看列:desc 表名;
    修改表名:alter table t_book rename to bbb;
    添加列:alter table 表名 add column 列名 varchar(30);
    删除列:alter table 表名 drop column 列名;
    修改列名MySQL: alter table bbb change nnnnn hh int;
    修改列名SQLServer:exec sp_rename‘t_student.name‘,‘nn‘,‘column‘;
    修改列名Oracle:lter table bbb rename column nnnnn to hh int;
    修改列属性:alter table t_book modify name varchar(22);

  如果想在一个已经建好的表中添加一列,可以用诸如:
  alter table t1 add column addr varchar(20) not null;
  这条语句会向已有的表t1中加入一列addr,这一列在表的最后一列位置。如果我们希望添加在指定的一列,可以用:
  alter table t1 add column addr varchar(20) not null after user1;
  注意,上面这个命令的意思是说添加addr列到user1这一列后面。如果想添加到第一列的话,可以用:
  alter table t1 add column addr varchar(20) not null first;
  


sp_rename:SQLServer 内置的存储过程,用与修改表的定义。





MySQL 查看约束,添加约束,删除约束 添加列,修改列,删除列

    查看表的字段信息:desc 表名;
    查看表的所有信息:show create table 表名;
    添加主键约束:alter table 表名 add constraint 主键 (形如:PK_表名) primary key 表名(主键字段);
    添加外键约束:alter table 从表 add constraint 外键(形如:FK_从表_主表) foreign key 从表(外键字段) references 主表(主键字段);
    删除主键约束:alter table 表名 drop primary key;
    删除外键约束:alter table 表名 drop foreign key 外键(区分大小写);

    修改表名:alter table t_book rename to bbb;
    添加列:alter table 表名 add column 列名 varchar(30);
    删除列:alter table 表名 drop column 列名;
    修改列名MySQL: alter table bbb change nnnnn hh int;
    修改列名SQLServer:exec sp_rename‘t_student.name‘,‘nn‘,‘column‘;
    修改列名Oracle:alter table bbb rename column nnnnn to hh int;
    修改列属性:alter table t_book modify name varchar(22);

sp_rename:SQLServer 内置的存储过程,用与修改表的定义。










































































以上是关于Sql--列操作的主要内容,如果未能解决你的问题,请参考以下文章

PL-SQL 操作列和插入

1241, '操作数应包含 1 列' pandas to_sql

在 SQL 查询中对单个列传递 AND 操作?

sql语句对列进行操作

sql中 行转列,列转行操作

需要 SQL 查询帮助并显示错误消息操作数应包含 1 列