精华内容
下载资源
问答
  • sql删除外键

    2010-03-29 22:20:23
    执行以下sql生成的语句即可 删除所有外键约束 Sql代码 select'altertable'||table_name||'dropconstraint'||constraint_name||...

    执行以下sql生成的语句即可

    删除所有外键约束 

    Sql代码 复制代码
    1. select 'alter table '||table_name||' drop constraint '||constraint_name||';' from user_constraints where constraint_type='R'  
    select 'alter table '||table_name||' drop constraint '||constraint_name||';' from user_constraints where constraint_type='R'

     禁用所有外键约束

    Sql代码 复制代码
    1. select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R'  
    select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R'

    启用所有外键约束

    Sql代码 复制代码
    1. select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constraints where constraint_type='R'  

    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23163255/viewspace-630717/,如需转载,请注明出处,否则将追究法律责任。

    转载于:http://blog.itpub.net/23163255/viewspace-630717/

    展开全文
  • SQL 删除外键

    2019-09-24 08:51:57
    SQL删除列的语句是: alter table tableName drop column columnName --(其中,tableName为表名,columnName为列名) 但是,如果某列有约束时,不能直接删除,需要先删除约束,再删除列。如果某个列是外键,...

    一 SQL删除列的语句是: 

    alter table tableName drop column columnName  --(其中,tableName为表名,columnName为列名)

    但是,如果某列有约束时,不能直接删除,需要先删除约束,再删除列。如果某个列是外键,在不知道外键约束名称的情况下,那么首先是查找外键约束名称,根据名称删除约束,然后再删除列。

    二 如何查找外键约束

    DECLARE @TableName NVARCHAR(64) = ''
    DECLARE @ColumnName  NVARCHAR(32) = ''SELECT c.name FROM sysconstraints a 
    inner join syscolumns b on a.colid=b.colid 
    inner join sysobjects c on a.constid=c.id
    where a.id=object_id(@TableName) 
    and b.name=@ColumnName

    上述代码在使用的时候需要给@TableName赋值实际的表名,@ColumnName为实际的列名。

    三 知道了约束名就可以删除约束了

    ALTER TABLE @TableName DROP CONSTRAINT @CONSTRAINT_NAME

     四 将上面的代码合并,于是有下面的代码

    DECLARE @TableName NVARCHAR(64) = ''
    DECLARE @ColumnName  NVARCHAR(32) = ''
    DECLARE @CONSTRAINT_Key SYSNAME
    SELECT @CONSTRAINT_Key = c.name FROM sysconstraints a 
    inner join syscolumns b on a.colid=b.colid 
    inner join sysobjects c on a.constid=c.id
    where a.id=object_id(@TableName) 
    and b.name=@ColumnName
    DECLARE @Sql NVARCHAR(512) = N'ALTER TABLE ' + @TableName + ' DROP CONSTRAINT ' + @CONSTRAINT_Key
    EXECUTE sys.sp_executesql @Sql

     

    转载于:https://www.cnblogs.com/godbell/p/9688844.html

    展开全文
  • SQL删除外键约束

    万次阅读 2019-06-14 02:18:23
    ...执行如下SQL语句删除即可。 1 alter table 表名 drop constraint 外键约束名       转载于:https://my.oschina.net/weisenz/blog/200655

      

    使用如下SQL语句查询出表中外键约束名称:

    1 select name  
    2 from  sys.foreign_key_columns f join sys.objects o on f.constraint_object_id=o.object_id 
    3 where f.parent_object_id=object_id('表名')

    执行如下SQL语句删除即可。

    1 alter table 表名 drop constraint 外键约束名

     

     

     

    转载于:https://my.oschina.net/weisenz/blog/200655

    展开全文
  • 在PL/SQL删除外键,无论是在【对象】窗口可视化操作删除还是用drop语句都会报错: ORA-02443: 无法删除约束条件-不存在的约束条件 看到有人有同样的问题。亲测之后: 情况一:常规操作 ALTER TABLE table_name ...

    在PL/SQL中删除外键,无论是在【对象】窗口可视化操作删除还是用drop语句都会报错:

     

    ORA-02443: 无法删除约束条件-不存在的约束条件


    看到有人有同样的问题。亲测之后:
    情况一:常规操作

     

    ALTER TABLE table_name DROP CONSTRAINT foreignkeyname;


    情况二:需要加引号(而且是双引号)

     

    ALTER TABLE table_name DROP CONSTRAINT "foreignkeyname";


    情况二,原因也找到了。是Oracle大小写区分。

     

    可能有人在建表的时候习惯用可视化工具创建表、外键等。这样工具会给表名、键名等自动加"",这样就区分了大小写。

     

    然而在做查询操作的时候不加双引号,会默认转化为大写,就有可能查询不到相关名称的表、外键等。

    本人在PL/SQL中使用SQL语句去建表就不会再有这样的问题。

     

    展开全文
  • 如果由于外键约束删除table失败,则先删除所有约束: --/第1步**********删除所有表的外键约束*************************/ DECLARE c1 cursor for  select 'alter table ['+ object_name(parent_obj) + '] ...
  • sql server 外键 In this article, we will seek an answer to an important question – “What is a foreign key in SQL Server?”. At the same time, we will give some seconder answers to this question. ...
  • sql_外键

    2021-05-20 10:25:47
    三、使用外键后想要删除/更新主表的相关列会报错,因为从表正在使用。使用外键后若想向从表中插入新列,但是外键值主表中没有,会报错,更新从表的外键值,但是值不在从表中会报错。 四、如何创建外键 法1:创建...
  • sql外键_SQL外键

    千次阅读 2020-07-27 05:46:11
    sql外键 In this article let us review different ways to create a SQL foreign key, rules on updates and deletes, enabling foreign key constraints, disabling foreign key constraints and not for ...
  • sql组合键设置外键 In the previous article, we talked about the primary key (PK). In this one, we’ll check what is the foreign key (FK) and how it’s related to the primary key. This is the final ...
  • SQL seriver 用T-sql 创建外键 1.建表时创建外键 create table 从表 ... “foreign key (关联字段) references 主表(关联字段)" ... go 2.建完表后,在表外部单独添加外键 --添加外键约束(关联字段...
  • SQL Server 外键约束

    千次阅读 2014-04-09 22:40:33
    SQL Server 外键约束的例子 外键约束的测试表与测试数据 -- 创建测试主表. ID 是主键. CREATE TABLE test_main ( id INT, value VARCHAR(10), PRIMARY KEY(id)  );   --...
  • SQL添加外键约束

    万次阅读 多人点赞 2019-03-14 11:05:42
    --1,sql语句创建表的同时添加外键约束 CREATE TABLE tb_UserAndRole --用户角色表 ( ID INT PRIMARY KEY IDENTITY(1,1), UserID INT NOT NULL,--用户ID RoleID INT NOT NULL,--角色ID foreign key(UserID) ...
  • SQL Server 2012 外键约束(定义外键删除外键

    万次阅读 多人点赞 2019-04-21 20:00:26
    文章目录准备知识定义外键使用SSMS工具定义外键使用SQL方式定义外键删除外键使用SSMS工具删除外键方式一:在对象资源管理器中删除主键方式二:在表设计器中删除主键使用SQL方式删除外键 准备知识     外键...
  • SQL - 外键约束

    2015-07-30 10:22:44
    我在 CSDN 学院发布的 SQL 入门视频教程。 外键用于连接两个表。外键也称为引用键。 外键是一个或一组匹配另一个表的主键的列。 如果一个表存在主键,那么主键列上的值不能重复。 示例 考虑以下两个表: ...
  • SQL server外键规范

    2018-03-27 21:52:31
    在关系图中的关系上点击右键,...下面我们来看看这几个规则: 删除规则:当删除操作涉及到外键时,各个设置值的说明情况如下无操作 显示一条错误信息,告知用户不允许执行该删除操作,DELETE 将被回滚。级联删除包...
  • Sql 多重外键约束

    千次阅读 2014-10-14 23:40:13
    多重外键约束这个名称可能并不准确,它是多个外键约束情况的一个特例,它指的是外键表有存在两个及以上外键关联到同一个主键表,例如一个部门,有正副两个管理者 首先看看不含多重外键的多个外键约束的一般情况,...
  • 转载:http://database.51cto.com/art/201006/206351.htm 此文主要向大家讲述的是SQL Server 外键的更新(删除)的实际操作规则,以前用数据库德 时候一般都建表关系,但是把这些关系建好了之后往往都用不上,...
  • SQL Server 批量 停用/启用 外键约束 今天百度知道上面,看到这样一个要求: 现在有一个库,有很多张表想要删除一张表的记录的时候,由于外键关联太多,所以,没法删除相应的记录,谁能帮忙写个存储过程,就是先删除所有...
  • SQL server 外键约束操作

    万次阅读 2019-03-25 14:49:21
    创建数据库时就是有主键的创建了主键,但是表之间的关系没有联系,要建数据库关系图只有主键没有外键时不行的。 建外键的前提是此外键必须是另外一个表的主键。建外键的步骤: 第一步、打开要建外键的表设计器,...
  • SQL_删除外键关系

    千次阅读 2018-04-28 10:18:54
    SQL_删除外键关系然后保存一下
  • In this article, we will review on DELETE CASCADE AND UPDATE CASCADE rules in SQL Server foreign key ... 在本文中,我们将使用不同的示例回顾SQL Server外键中的DELETE CASCADE和UPDATE CASCADE规则。 DEL...
  • SQL外键

    千次阅读 2008-08-30 14:01:00
    以下面三张表为例:有三张表,一张表是读者信息,有一个属性为readno,一张表是图书的信息,有一个属性是bookno,一张表是借阅关系,有两个属性分别以读者信息表中的readno,和图书信息表中的bookno为外键,我想问的...
  • 以前用数据库,一般都建表关系,但是这些关系建好了往往没有用到. 这次写一个项目,涉及到多表的外键约束和级联删除的问题,才研究了一下. 用的vs2005里面自带的SqlExpress,在VS里面作数据库,感觉不是...
  • SQL sever 删除外键约束

    2019-10-23 08:30:45
    在进行数据库插入操作时,遇到了问题,考虑先删除外键 法一、 法二、用SQL(找到外键的名称) 大功告成!
  • SQL外键约束

    千次阅读 热门讨论 2014-01-27 14:14:39
    用来保证数据库的参照完整性,外键的取值必须来自参照表参照列的 值,可以为空也可不为空。 作用: 外键取值规则:空值或参照的主键值。 (1)插入非空值时,如果主键表中没有这个值,则不能插入。 (2

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 103,314
精华内容 41,325
关键字:

sql删除外键