转载一篇比较全面的,创建主键等常用操作总结

日期:2019-11-27编辑作者:数据大全

一. 列常用操作

① 添加新的一列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

(2)有命名

二. 针对表的多数操作

① 修改指定表的存储引擎,假设原本是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;

(1)无命名

alter table student drop constraint SYS_C002715;

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

create table student (

语法:

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

create table student (

create table students (

drop column name;

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

alter table TABLE_NAME rename column FIELD_NAME to NEW_FIELD_NAME;

age int);

insert into test1

删除一个字段

alter table students drop constraint yy;

has_money number(9,2)

(id varchar2(20) not null);

然后曾修改列: alter table test1

studentid int primary key not null,

create table test1

alter table test1

(1)无命名

Oracle 增加修改删除字段

studentid int primary key not null,


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

(2)有命名

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

studentname varchar(8),

ALTER TABLEtable_nameRENAME TOnew_table_name;

另:比较正规的写法是:

alter table test1

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

修改列的名称

studentname varchar(8),

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

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

-- Add/modify columns

constraint yy primary key(studentid));

age int);

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

范例:

studentid int ,

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

studentname varchar(8),

ERROR 位于第 2 行:

修改一个字段

创建表结构:

age integer default 22 not null,

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

ALTER TABLE table_name RENAME COLUMN supplier_name to sname;

可用 SELECT * from user_cons_columns;

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

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

增加一个字段:

高级用法:

alter table test1

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

);

将会得到以下错误:

age int,

3、向表中添加主键约束

modify (name varchar2(8));

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

附:创建带主键的表>>

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

alter table s_dept rename column age to age1;

alter table test1

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

重命名表

本文由澳门金莎娱乐网站发布于数据大全,转载请注明出处:转载一篇比较全面的,创建主键等常用操作总结

关键词:

在PXC中重新添加掉线节点

** Copy the backup set to nodezlm4. ** Checkthe error log on node zlm3. ** Resetslave replication information on node zlm4.(optional) ** 1 [root@zlm4 1...

详细>>

澳门金莎娱乐手机版:MySQL常用操作手册,SQL基本

大器晚成、基本概念 启动MySQL服务 $ sudo service mysql start或者/etc/init.d/mysql start 目录 目录 1.数据库: 数据库(DataBase)正...

详细>>

用SQL语言操作数据,SELECT查询结果集INSERT到数据

2.UNION合并多个结果集作为数据 3:比较运算符 2.使用DELETE删除数据 DELETE  [FROM]  表名  [WHERE删除条件] 使用TRUNCATE删...

详细>>

Server2016升级前几点自检,SQLServer2008版本号查询

参考 SQL Server 2012编程入门经典(第4版) SQL Server 自带的数据类型           SqlServer Management Studio 新建查询 select @@ver...

详细>>