一、前提

主键解释:

   一个表的唯一关键字 比如一个学生表 学号不能重复且唯一 ,学号就是关键字,即为主键。

区别于外键:

   外键就是跟其他表联系的字段 ,还是比如有一张学生表 还有一张选课表,这个时候要修改学生表中的学号 ,选课表里对应的就也得变,这样就需要给选课表加学号作为外键约束,这样当你修改学号时 所有外键关联的就都改了

二、回归主题,主键的添加、删除等操作

1.有命名主键
1)有命名主键的添加
①建表时添加主键(yy为主键“ID”的主键名称)

CREATE TABLE table_test(id INT NOT NULL,       --注意:主键必须非空name VARCHAR(20) NOT NULL,address VARCHAR(20),constraint yy PRIMARY KEY(id));

②建表后添加主键

alter table table_test add constraint yy primary key(id);
公式:alter table 表名 add constraint yy primary key(主键1,主键2);

2)有命名主键的删除

ALTER TABLE table_test DROP CONSTRAINT yy;
公式:ALTER TABLE 表名DROP CONSTRAINT 主键名;

3)有命名主键的修改
需先删除主键,再进行添加

2.无命名主键
1)无命名主键的创建
①建表时添加主键(主键“ID”的主键名称需要查询出来,下文有方法)

CREATE TABLE table_test(id INT NOT NULL,       --注意:主键必须非空name VARCHAR(20) NOT NULL,address VARCHAR(20),PRIMARY KEY(id));

②建表后添加主键

alter table table_test add primary key (id);
公式:alter table 表名 add primary key(主键字段1,主键字段2...);

2)无命名主键的删除
①先查出来主键名(constraint_name),user_cons_columns表会在文末给出解释

SELECT t.* from user_cons_columns t where t.table_name  = 'TABLE_TEST' and t.position is not null;
公式:SELECT t.* from user_cons_columns t where t.table_name  = '表名' and t.position is not null;   --表名必须大写,如:TABLE_TEST

②再执行删除的SQL

ALTER TABLE table_test DROP CONSTRAINT SYS_C0056038;
公式:ALTER TABLE 表名 DROP CONSTRAINT 主键名;

3)无命名主键的修改
需先删除主键,再进行添加

Oracle添加主键、删除主键、修改主键相关推荐

  1. oracle 建表字段设置,Oracle创建表、删除表、修改表(添加字段、修改字段、删除字段)语句总结...

    关于Oracle创建表.删除表.修改表(添加字段.修改字段.删除字段)语句的简短总结. Oracle创建表: create table 表名 ( 字段名1 字段类型 默认值 是否为空 , 字段名2 字 ...

  2. 删除某一个字段oracle,oracle添加字段或者删除字段-转载

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

  3. oracle创建目录并赋权,Oracle 添加用户并赋权,修改密码,解锁,删除用户的方法...

    添加用户(随着用户的创建,自动产生与用户同名的schema) CREATE USER "TESTER" PROFILE "DEFAULT" IDENTIFIED ...

  4. ORACLE添加字段、删除字段

    文章目录 1. 删除表 2. 创建表 3. 添加字段 4. 删除指定字段 5. 修改指定字段长度 1. 删除表 DROP TABLE SYS_JOB; 2. 创建表 -- CREATE TABLE C ...

  5. Oracle创建表、删除表、修改表(添加字段、修改字段、删除字段)语句总结

    创建表: create table 表名 ( 字段名1 字段类型 默认值 是否为空 , 字段名2 字段类型 默认值 是否为空, 字段名3 字段类型 默认值 是否为空, ...... ); 创建一个us ...

  6. php添加导航和删除导航,新增/修改/删除ECSHOP后台左侧导航菜单

    ECSHOP后台有许多管理菜单,是否有心想将一些不用的菜单删除呢,是否想增加或者修改菜单名称呢. 通过以下方法可以实现: 例如:我们要在后台新增一个菜单分类项"APP管理",再增加 ...

  7. C# SQL添加数据,删除数据,修改数据,查询数据

    登录界面查询 String constr = "data source=.;initial Catalog=DB1;user id=sa;password=123";SqlConn ...

  8. db2修改字段名_DB2 建表,添加字段,删除字段,修改字段等常用操作

    转载:http://blog.sina.com.cn/s/blog_67aaf4440100v01p.html,稍作修改. --创建数据库 create database Etp; --连接数据库 c ...

  9. Mysql报错1091解决办法_关于MYSQL:外键删除后,查询表发现外键依旧存在,再删一次会报错:原因及相关解决办法...

    1.创建表test6:外键名为test3_fk mysql> create table test6( -> id int, -> test_name varchar(32), -&g ...

  10. Linux上添加路由,删除路由,修改路由配置(route add, route del, 路由表项基本知识)

    路由基础知识: 是由一项或者多项路由表组成的,每个IP报文被发送前,系统都会查找主机路由表,决定将这个报文从 哪个网卡,发送到哪个下一跳.路由表项可以分成主机路由,网络路由和默认路由3种.每条路由表项 ...

最新文章

  1. 阿里发布AliGenie2.0系统,“百箱大战”用上视觉武器
  2. Day 23:使用 TimelineJS 构建精美的时间轴
  3. 计算机数学渤海船舶职业学院,渤海船舶职业学院2020年高职扩招录取原则
  4. centos安装mysql初始化没有密码_centos 6 初次安装mysql 的密码初始化登陆问题
  5. 洛谷p3764签到题3
  6. 寂寞的季节C调吉他谱 - 陶喆
  7. extjs 教程 java_ExtJS实战 01——HelloWorld
  8. 万能查看电脑连接过的WiFi密码
  9. ByteDance字节跳动张一鸣:如何阅读、如何了解自己、如何与人沟通沟通、如何安排时间、如何正确的看待别人意见、如何激励自己、如何写作、如何坚持锻炼身体、如何耐心?...
  10. python自然语言分析--倚天屠龙记人物关系、词云、柱状图、-词频
  11. 打印六芒星_java
  12. excel合并同一目录下代码(多文件合并到同一个文件多Sheet下、多文件合并到同一个Sheet下)
  13. 67在C51语言表示16进制数,计算机真题
  14. Django 项目管理
  15. 手机lbs位置服务盘点
  16. java 比大小(四种方法任选)
  17. 90-什么是集成学习
  18. 2022新版驾考技巧驾考培训驾考技巧考试培训系统源码/题库小程序/题库系统源码/驾考答题系统源码
  19. 参考霍兰德人格分析雷达图的思路来设计一组学生八门课的成绩雷达图
  20. 人才公司环境与企业文化

热门文章

  1. 区块链与分布式隐私计算行业报告 | TokenInsigh
  2. Vue使用视频作为背景
  3. 《ZEMAX光学设计超级学习手册》一一1.2 用户界面
  4. Thunderbird 配置个人QQ邮箱
  5. 计算机字处理设置上标形式,大学计算机基础教程(冉崇善)第3章 word 2010文字处理.pptx...
  6. MYSQL删除上亿条的大量数据的具体实现
  7. 基于Arduino的智能家居语音识别系统设计
  8. c语言的long是什么意思,C语言*(long*)0=0是什么意思?
  9. 区别传统广告联盟,穿山甲的新角色
  10. 易支付相关知识积累(easyPay)