精华内容
下载资源
问答
  • 删除一个数据库中所有数据的方法

    千次阅读 2009-03-18 23:45:00
    其实删除数据库中数据的方法并不复杂,...也许很多读者朋友都经历过这样的事情:要在开发数据库基础上清理一个空库,但由于对数据库结构缺乏整体了解,在删除一个表的记录时,删除不了,因为可能有外键约束,一个常见的

    其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间可能形成相互约束关系,删除操作可能陷入死循环,二是这里使用了微软未正式公开的sp_MSForEachTable存储过程。

    也许很多读者朋友都经历过这样的事情:要在开发数据库基础上清理一个空库,但由于对数据库结构缺乏整体了解,在删除一个表的记录时,删除不了,因为可能有外键约束,一个常见的数据库结构是一个主表,一个子表,这种情况下一般都得先删除子表记录,再删除主表记录。
    说道删除数据记录,往往马上会想到的是delete和truncate语句,但在遇到在两个或多个表之间存在约束的话,这两个语句可能都会失效,而且最要命的是这两个命令都只能一次操作一个表。那么真正遇到要删除SQL Server数据库中所有记录时,该怎么办呢?有两个选择:

    1.按照先后顺序逐个删除,这个方法在表非常多的情况下显得很不现实,即便是表数量不多,但约束比较多时,你还是要花费大量的时间和精力去研究其间的约束关系,然后找出先删哪个表,再删哪个表,最后又删哪个表。

    2.禁用所有约束,删除所有数据,最后再启用约束,这样就不用花时间和精力去研究什么约束了,只需要编写一个简单的存储过程就可以自动完成这个任务。
    从这两个选择中不难看出第二个选择是最简单有效的了,那么在使用第二个选择时,具体该怎么实施呢?

    首先得编写代码循环检查所有的表,这里我推荐一个存储过程sp_MSForEachTable,因为在微软的官方文档中没有对这个存储过程有描述,很多开发人员也许都还未曾听说,所以你在互联网上搜索得到的解决办法大多很复杂,也许有的人会认为,既然没有官方文档,这个存储过程可能会不稳定,打心理上会排斥它,但事实并非如此。下面来先看一个完整的脚本:

     

    CREATE PROCEDURE sp_DeleteAllData
    AS
    EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
    EXEC sp_MSForEachTable 'ALTER TABLE ? DISABLE TRIGGER ALL'
    EXEC sp_MSForEachTable 'DELETE FROM ?'
    EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
    EXEC sp_MSForEachTable 'ALTER TABLE ? ENABLE TRIGGER ALL'
    EXEC sp_MSFOREACHTABLE 'SELECT * FROM ?'
    GO

     

    这个脚本创建了一个命名为sp_DeleteAllData的存储过程,前面两行语句分别禁用约束和触发器,第三条语句才是真正地删除所有数据,接下里的语句分别还原约束和触发器,最后一条语句是显示每个表中的记录,当然这条语句也可以不要,我只是想确认一下是否清空了所有表而已。

    你可以在任何数据库上运行这个存储过程,当然不要在生成数据库上运行,可别怪我没告诉你!不管怎样,还是先备份一下数据库,使用备份数据库还原,然后再运行该存储过程,呵呵,即使是一个大型数据库,也要不多长时间,你的数据库就成一个空库了,有点怕怕的感觉!

    展开全文
  • 一.同步表数据 想把数据库LIS_BAK中的表rate20,...--为连接起一个名字 CREATE database link LIS_BAK --输入数据库用户名 CONNECT to xxxxx --输入数据库密码 IDENTIFIED by "xxxxx" --输入数据库连接串 u...

    一.同步表数据

    想把数据库LIS_BAK中的表rate20,同步到数据库TEST中,做法:
    需要在想要创建新表的数据库中(也就是TEST)执行下面代码
    在这里插入图片描述

    二.附上图中的代码块

    --为连接起一个名字
    CREATE database link LIS_BAK
    --输入数据库用户名
    CONNECT to xxxxx
    --输入数据库密码
    IDENTIFIED by "xxxxx"
    --输入数据库连接串
    using 'xxxxxxxxxxxx'; 
     --查看数据库库连接
    select * from dba_db_links; 
    ---此处rate20为你要新创建的数据库表
    create table rate20 as select * from rate20@LIS_BAK;
    --删除连接
    drop database link LIS_BAK;
    
    展开全文
  • 怎样在ORACLE中怎么删除一个数据库

    千次阅读 2009-04-02 18:10:00
    打开dos ——〉设置环境变量(set oracle_sid=要删除数据库名) ——〉连接sqlplus(sqlplus sys/数据库密码 as sysdba) ——〉查看数据库是否正确(show parameter db_name) ——〉关闭数据库(shutdown ...

     

    打开dos

     

    ——〉设置环境变量(set oracle_sid=要删除的数据库名)

     

    ——〉连接sqlplus(sqlplus sys/数据库密码 as sysdba)

     

    ——〉查看数据库是否正确(show  parameter db_name

     

    ——〉关闭数据库(shutdown immediate

     

    ——〉以限制条件数据库启动例程(startup restrict mount

     

    ——〉现在执行数据库语句(drop database

     

    接着打开注册表

     

    运行regedit——〉HKEY_LOCAL_MACHINE——〉SYSTEM——〉CurrentControlSet——〉ServicesORACLE开头并且含有数据库名的文件删除即可!

     

    展开全文
  • 1.一般情况下删除一个Sql Server数据库: 新建查询→输入“drop database xxx(xxx为数据库名)”→执行。 但有时会报错:无法删除数据库 "lib",因为该数据库当前正在使用。 2.解决办法 USE master ...

    1.一般情况下删除一个Sql Server数据库:

    新建查询→输入“drop database xxx(xxx为数据库名)”→执行。

    但有时会报错:无法删除数据库 "lib",因为该数据库当前正在使用。

    2.解决办法

    USE master 
    GO 
    drop database xxx;

    执行如上代码,代码的意思就是使用master数据库,那么我们要删除的数据库就不会说正在使用了,删除语句就能执行了。 

    展开全文
  • 今天在操作MySQL数据库时,发现以前一个用来实现省份级联的两张表可以直接拿来用,便把这两张表的文件拷贝到另一台数据库文件夹下,数据库文件路径可以从安装目录下的my.ini中的datadir="C:/ProgramData/MySQL/MySQL...
  • 1.远程登录mysql ... 2.创建用户 ...例1:增加一个test1用户,密码为123456,可以在任何主机上登录,并对所有数据库有查询,增加,修改和删除的功能。需要在mysql的root用户下进行 mysql>grant select,
  • 数据库语句删除数据库

    万次阅读 2019-06-17 20:43:28
    开发工具与关键技术:SQL Server 2014与SQL ...其实创建和删除数据库都有两种方法(只知道两种),种就是右键,另种就是用代码的方式删除,创建数据库。 打开自己的sql数据库,点击新建查询,随后右边...
  • 步:右键源数据库名,单击“将数据库复制到不同的主机/数据库”,查看图,图二。 (图) ...
  • SQL 把一个数据库里面的某张表里的数据插入到另外一个数据库里面的一张表,总结了2种方法:  1. 目标及源数据库在同一个DBMS上的情况;   insert into tab1 select * from 数据库名.dbo.tab2;  2. 用数据管道...
  • 由于微服务分库导致无法跨库(忽略 db_name.table_name 方式)统计查询,因此利用 MySQL 主从复制的方式,将主服务器上的多个数据库同步到从服务器上的单个数据库上,从库设置只读,仅用于统计查询。 假设主服务器上...
  •  实现结果:在一个数据库中某个用户下编写一个存储过程,在存储过程中使用DBLINK连接另一个数据库,从此数据库中的一个用户下取数,然后插入当前的数据库中的一个表中。   二. 实现方法步骤:  1. 创建存储...
  • Linux下新建一个MySQL数据库

    万次阅读 2018-04-20 18:43:57
    方法适用于MySQL和MariaDB,MariaDB完全兼容...下面新建一个数据库 mynewdatabase create database mynewdatabase; //注意别漏了“;”分号哦 这下就新建了一个数据库 mynewdatabase 我们来查看一下: show datab...
  • kettle打开mysql数据库资源库报错:一个数据库错误发生在从资源库文件读取转换时 ** 一、报错信息如下: 点击“细节”之后完整报错如下: 然后再去资源库连接的mysql库里查看(初始化资源库时候会在mysql...
  •  实现结果:在一个数据库中某个用户下编写一个存储过程,在存储过程中使用DBLINK连接另一个数据库,从此数据库中的一个用户下取数,然后插入当前的数据库中的一个表中。 二. 实现方法步骤:  1. 创建...
  • 也许很多读者朋友都经历过这样的事情:要在开发数据库基础上清理一个空库,但由于对数据库结构缺乏整体了解,在删除一个表的记录时,删除不了,因为可能有外键约束,一个常见的数据库结构是一个主表,一个子表...
  • 数据库

    千次阅读 多人点赞 2020-03-05 16:39:37
    1.什么是数据库 数据库:英文为Databsae,简称DB 数据库是按照数据结构来组织,存储和管理数据的仓库 简而言之,数据库就是*存储数据的仓库* 2.数据库的分类 数据库根据句存储采用的数据结构的不同可以分为许多种,...
  • Django中一个项目使用多个数据库

    千次阅读 2019-07-06 17:03:01
    在django项目中, 一个工程中存在多个APP应用很常见. 有时候希望不同的APP连接不同的数据库,这个时候需要建立多个数据库连接。 1. 修改项目的 settings 配置 在settings.py中配置需要连接的多个数据库连接串 ...
  • 一个简单数据库设计例子

    万次阅读 多人点赞 2015-03-17 10:39:43
    一个曾经做过的简单的管理系统中数据库设计的例子,包括设计表、画ER图、建模、脚本. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 项目信息 Project Name: Book...
  • //使用openOrCreateDatabase()创建一个数据库 // getFilesDir() data–date–package name –files目录下 db = SQLiteDatabase.openOrCreateDatabase(getFilesDir() + “/info.db”, null); 创建数据库: String ...
  • 怎么样才能让数据库kong的拥有者变为kong呢?下面我就说一下解决方案
  • SQL Server数据库课2:数据库的备份和还原、收缩数据库删除数据库 知识点:数据库的备份和还原、收缩数据库的方法、删除数据库。 1、备份和还原数据库         在数据库运行过程当中,...
  • 当用户要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。下面讲介绍如何在本地数据库中创建...
  • MySQL删除数据库

    千次阅读 2017-09-06 16:15:34
    MySQL 删除数据库
  • 删除目录中的最后一个数据库时,Notes和Domino会把该数据库所在的目录也删除 环境 产品:Lotus Domino平台:无关版本: 6.x,5.x
  • 实现结果:在一个数据库中某个用户下编写一个存储过程,在存储过程中使用DBLINK连接另一个数据库,从此数据库中的一个用户下取数,然后插入当前的数据库中的一个表中。 二. 实现方法步骤:  1. 创建存储过程 ...
  • DB2删除数据库

    万次阅读 2017-03-24 14:20:26
    DB2删除数据库
  • 知识点:数据库的备份和还原、收缩数据库的方法、删除数据库。 1、备份和还原数据库数据库运行过程当中,难免会遇到诸如人为错误、硬盘损坏、电脑病毒、断电或是其他灾难,这些都会影响数据库的正常使用和数据...
  • 我们一般会在备份的时候指定--all-databases来备份所有数据库,利用该备份文件还原的时候默认会还原所有数据库(即使你指定了某一个数据库,如mysql -u root -p 数据库名称 备份文件)。那么,怎样利用对所有...
  • 例如: 我只想删除只包含科目只为化学的编号,001因为有语文所有不能删除, 只能删除002,这语句该怎么写啊?请大神给看看 编号,科目 001 化学 001 语文 002 化学 003 数学

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,525,856
精华内容 610,342
关键字:

如何删除一个数据库