您的位置:澳门新葡8455最新网站 > 数据库管理 > 创立主键等常用操作总括,转载生龙活虎篇比较

创立主键等常用操作总括,转载生龙活虎篇比较

发布时间:2019-10-27 09:13编辑:数据库管理浏览(55)

    一. 列常用操作

    ① 添加新的一列test_column,并将其作为主键,FIRST将其放在表中第一行,auto_increement是自动增长

    alter table test_table add column test_column int not null auto_increment FIRST add primary key(test_column);
    
    • 1

     

    可以使用SQL语句“alter table ai3 add id0 int  auto_increment primary key first;”来添加主键列。可以使用SQL语句“alter table ai4 modify id int auto_increment primary key;”来修改主键列。

    ② 删除列

     

    alter table test_table drop column test_column;
    
    • 1

    ③ 修改某一列的字段长度(例如本来是30字节改为50字节长)

    alter table test_table modify column test_column varchar(50);
    
    • 1

    ④ 完全修改某一列(假设原本列名是test1_column,类型是int)

    alter table test_table change column test1_column test_column varchar(30);
    
    • 1

    ⑤ 仅仅想重命名某一列(首先需要了解这一列的类型,假如原本是int且不为空,列名是error_name_column)

    alter table test_table change column error_name_column test_column int not null;
    
    • 1

    Oracle 增加修改删除字段

    二. 针对表的多数操作

    ① 修改指定表的存储引擎,假设原本是MYISAM

    alter table test_table engine=innodb;
    
    • 1

    ② 删除指定表的主键

    alter table test_table drop primary key;
    
    • 1

    这里有个情况需要指出,如果该主键列是自动增长(auto_increment)的,因为mysql要求自动增长列必须是索引,所以删除主键也就删除了主键索引,这是不符合mysql要求的,是无法实现的,会报错,必须先删除自动增长(通过修改列属性),后删除主键

    ③ 为指定表添加主键

    alter table test_table add primary key(test_column);
    
    • 1

    ④ 为指定表添加索引(普通索引),test_index是索引名

    alter table test_table add index test_index(test_column);
    
    • 1

    ⑤ 删除指定表索引

    alter table test_table drop index test_index;
    
    • 1

    ⑥ 重命名表

    alter table test_table rename new_name_table;
    

     

     



     

     

    如果想在一个已经建好的表中添加一列,可以用诸如:

    alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(20) not null;

    这条语句会向已有的表中加入新的一列,这一列在表的最后一列位置。如果我们希望添加在指定的一列,可以用:

    alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(20) not null after COLUMN_NAME;

    注意,上面这个命令的意思是说添加新列到某一列后面。如果想添加到第一列的话,可以用:

    alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(20) not null first;

    添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….);

    修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],….);

    删除字段的语法:alter table tablename drop (column);

    添加、修改、删除多列的话,用逗号隔开。

    使用alter table 来增加、删除和修改一个列的例子。

    创建表结构:

    create table test1

    (id varchar2(20) not null);

    增加一个字段:

    alter table test1

    add (name varchar2(30) default ‘无名氏’ not null);

    使用一个SQL语句同时添加三个字段:

    alter table test1

    add (name varchar2(30) default ‘无名氏’ not null,

    age integer default 22 not null,

    has_money number(9,2)

    );

    修改一个字段

    alter table test1

    modify (name varchar2(16) default ‘unknown’);

    另:比较正规的写法是:

    -- Add/modify columns

    alter table TABLE_NAME rename column FIELD_NAME to NEW_FIELD_NAME;

    删除一个字段

    alter table test1

    drop column name;

    需要注意的是如果某一列中已经存在值,如果你要修改的为比这些值还要小的列宽这样将会出现一个错误。

    例如前面如果我们插入一个值

    insert into test1

    values (’1′,’我们很爱你’);

    然后曾修改列: alter table test1

    modify (name varchar2(8));

    将会得到以下错误:

    ERROR 位于第 2 行:

    ORA-01441: 无法减小列长度, 因为一些值过大


    高级用法:

    重命名表

    ALTER TABLEtable_nameRENAME TOnew_table_name;

    修改列的名称

    语法:

    ALTER TABLE table_name RENAME COLUMN supplier_name to sname;

    范例:

    alter table s_dept rename column age to age1;

    附:创建带主键的表>>

    create table student (

    studentid int primary key not null,

    studentname varchar(8),

    age int);

    1、创建表的同时创建主键约束

    (1)无命名

    create table student (

    studentid int primary key not null,

    studentname varchar(8),

    age int);

    (2)有命名

    create table students (

    studentid int ,

    studentname varchar(8),

    age int,

    constraint yy primary key(studentid));

    2、删除表中已有的主键约束

    (1)无命名

    可用 SELECT * from user_cons_columns;

    查找表中主键名称得student表中的主键名为SYS_C002715

    alter table student drop constraint SYS_C002715;

    (2)有命名

    alter table students drop constraint yy;

    3、向表中添加主键约束

    alter table student add constraint pk_student primary key(studentid);

    本文由澳门新葡8455最新网站发布于数据库管理,转载请注明出处:创立主键等常用操作总括,转载生龙活虎篇比较

    关键词:

上一篇:没有了

下一篇:没有了