首页 > 其他分享 >修改表结构及表的约束的添加和删除

修改表结构及表的约束的添加和删除

时间:2023-07-12 15:55:08浏览次数:33  
标签:新列 删除 constraint 列名 添加 及表 表名 table alter

修改表结构
  1. 增加新列,语法如下,注意通过新增新列可以对新列的名称数据类型缺省值约束指定,增加的新列总是位于最后,假如新列定义了默认值,则新列所有行自动填充默认值,对于所有数据的表,新增加的新列的值为null,所有有数据的表,新增新列不能指定为not null约束条件

    alter table 表名 add 列名 数据类型 [default  表达式]  [ conlumn constraint ];
    --增加多列
    alter table 表名 add (列名 数据类型 [defaulet 表达式] [column constraint]...);
  2. 修改列,语法如下

    alter table 表名 modify 列名 数据类型 [default 表达式] [column constraint];
    ---如果对表同时修改多列
    alter table 表名 modify (列名 数据类型 [default 表达式][column constraint].....);

    其中列名是修改列的标识,不能修改,如果要改变表的列名,只能先删除,再增加。其他部分都可以修改,如果没有给出新的定义标识该部分数据不变化。

    注意:1)列的宽带可以增加或减小,在表的列没数据或者数据为NULL时才能减小宽度。

    2)在表的列没数据或者数据为NULL时才能改变数据类型。varchar2和char之间可以随意转换。

    3)只有当列的值非空时,才能增加约束条件 not null。

    4)修改列的默认值,只影响以后插入的数据。

  3. 删除列 语法如下

    alter table 表名 drop column 列名 [cascade constraint]
    --如果对表同时修改多列
    alter table 表名 drop (列名1,列名2) [cascade constraint];

    当删除列时,列上的索引和约束条件被同时删除。但如果列是多列的约束的一部分,则必须指定cascade constraint 才能删除约束条件


 

修改表约束的添加和删除

表约束指数据完整性和参照完整性,可以为表的增加表约束条件或者删除表约束条件。

  1. 增加约束条件 ,语法如下

    --语法
    alter table 表名 add constraint [约束名] 表级约束条件 (列名)
    --eg:
    alter table emp add constraint fk_deptno foreing key (depton) reference dept(deptno);
  2. 删除约束 ,语法如下

    --语法
    alter table 表名 drop primary key|unique(列名)|constraint 约束名 [cascade]

     

 

标签:新列,删除,constraint,列名,添加,及表,表名,table,alter
From: https://www.cnblogs.com/xjianbing/p/17547712.html

相关文章

  • [GIT]如何删除分支【转载】
    前言在用git开发过程中,我们在分支合并后会将分支删除。这里我们会遇到两种情况,一是本地和远程的分支都还在,另一种就是远程仓库已经删除了,但本地仓库还有备份。本地和远程分支都在这是最常见的情况了,在这种情况下,我们会先删除本地分支,再删除远程分支。1.删除本地分支在git中,删除......
  • SQLSERVER 维护计划无法删除
    数据对网站运营或者企业运营是至关重要的,所以,我们在使用数据库的时候,为了保证数据的安全可靠性,都会做数据库备份,很显然,这个备份,我们不可能每天都去手动备份,SQLServer数据库就可以提供数据库定时备份的任务,你可以设置按照天、周、月、年等不同设置不同的备份周期,这里我就不在介......
  • 如何实现Android 添加圆形进度条的具体操作步骤
    Android添加圆形进度条在Android开发中,我们经常需要显示一个进度条来展示某个任务的进度。圆形进度条是一种常见的进度条样式,它以圆形的形式展示任务的进度。本文将介绍如何在Android应用中添加圆形进度条,并附带代码示例。第一步:添加依赖要使用圆形进度条,我们需要在项目的build......
  • linux shell脚本实现删除连续的空行为一行
     001、awk实现[root@PC1test02]#lsa.txt[root@PC1test02]#cata.txt##测试数据010203040506070809101112131415161718192021222324252627282930##将多个连续的空行压缩为一个空行[root@PC1tes......
  • BootstrapBlazor组件库,在你的Blazor应用程序中添加一个看板娘
    BootstrapBlazor组件库,在你的Blazor应用程序中添加一个看板娘效果如图这里主要用到了BootstrapBlazor组件库的Live2D插件,本插件基于pixi-live2d-display,并且支持所有版本的Live2D模型。使用时只需要在nuget安装BootstrapBlazor.Live2DDisplay组件包,在MainLaout.razor中,添......
  • Linux创建用户、删除用户
     一、创建用户1.创建用户:vagrant为用户名->sudouseradd-mvagrant-d/home/vagrant-s/bin/bash2、为创建的用户设置密码->sudopasswdvagrant3、修改用户的权限:(/etc/sudoers文件只有r权限,在改动前需要增加w权限,改动后,再去掉w权限)(1)为sudoers增加写......
  • mapbox添加自定义控件
    需要定义一个类,然后至少重写实现onAdd、onRemove方法,示例如下<template><divref="changeViewRef"@click="changeView"class="changeViewmapboxgl-ctrl"><el-tooltipclass="box-item"effect="dark"......
  • 不小心删除服务[null]后,git bash出现错误,如何解决?
    不小心删除服务[null]后,gitbash出现错误,如何解决?错误描述:打开gitbash、msys2都会出现错误「bash:/dev/null:Nosuchdeviceoraddress」问题定位:1.使用搜索引擎搜索「bash:/dev/null:Nosuchdeviceoraddress」,一般答案是[null]服务出现问题,可能是缺少对应的文件「C:......
  • Linux 软链接删除
    创建软链接在Linux中,可以使用ln-s[源文件][软链接文件]的命令来创建软链接。首先,打开终端并进入目标路径,可以使用pwd命令查看当前路径。使用mkdir命令创建一个名为test的目录,并使用touch命令在该目录下创建两个测试文件,分别为test.txt和val.txt......
  • 使用 GORM 进行软删除和硬删除
    目录结构:软删除在GORM中使用软删除删除已经被标记为已删除的记录硬删除在GORM中使用硬删除永久删除已经被标记为已删除的记录软删除在GORM中,软删除(softdelete)是指将记录标记为已删除,而不是从数据库中永久删除记录。软删除可以保留已删除记录的历史记录,同时......