SQL DROP DB简介
下面的文章提供了一个SQL DROP DB的概要。使用DROP DATABASE语句可以删除一个现有的SQL数据库。丢弃一个数据库需要一个与主数据库(Tomcat、Apache)相连的数据库。目前只能放弃一个数据库,而且DROP DATABASE命令必须是SQL批处理中的唯一语句。
关键的经验之谈
- 当数据库被删除时,专门为数据库分配的权限不会被立即删除。它们必须被手动删除。
- 在RDBMS中,数据库的名字应该总是与众不同。
什么是SQL删除数据库?
DROP DATABASE 语句永远不考虑数据库和所有相关表。因此,人们必须非常谨慎地使用这个语句。人们可以通过在删除数据库后检查数据库列表来仔细检查一个数据库是否已经被正确地删除。
代码
Create database db name; // Creates a database
Use database; // Using a database to store a records
Show databases; // Displays available databases;
DROP database ; // Deletes a particular database.
如何使用SQL Drop数据库语句?
Drop语句在数据库系统中使用,在MySQL中创建一个单独的房间来放置记录。如果我们不需要数据库的进一步使用或垃圾收集器,我们可以在SQL语句中使用DROP关键字来完全丢弃系统中的一条记录。
表的结构和相关的统计数据、权限、触发器和限制被完全删除。SQL视图和存储过程可以引用该SQL表。这些存储过程和视图被SQL Server留在原地。我们必须明确地删除它们。在删除一个SQL表之前,我们需要看一下对象的依赖性。
DROP DATABASE语句的语法由以下内容演示。
DROP DATABASE db_name。
在这个语句中的DROP DATABASE关键字之后,用户输入他们希望销毁的数据库名称。
如果我们试图删除一个不存在的数据库,就会产生一个MySQL错误。人们可以使用IF EXISTS选项来阻止在我们删除一个不存在的数据库时发生错误。在这种情况下,MySQL将停止语句,而不抛出一个错误。
DROP DATABASE语句返回被销毁的表的数量。
通过使用一个DROP语法,我们也可以快速销毁许多数据库。
DROP DATABASE Db_Name1, [ Db_Name2, ......., Db_NameN ] 。
这个语句使我们不需要用几个命令来删除各种数据库。正如上面的语法所演示的,我们可以通过插入一个逗号在一个简短的语句中指定所有的数据库。
DROP DATABASE语句从指定的数据库位置删除了MySQL在常规操作中可能产生的文件和文件夹。所有具有以下扩展名的文件都包括在其中。BAK、CFGS、DAT、DB和IBD。如果在MySQL删除了前面提到的项目后,数据库目录中还存在其他文件或目录,则不能删除。在这种情况下,必须小心地删除任何残留的文件或目录,并发出另一个 DROP DATABASE 语句。当数据库被删除时,在数据库中创建的任何TEMPORARY表不会被删除。创建临时表的会话结束后会自动删除临时表。
SQL Drop DB Delete
- DB Delete在过滤查询语句中使用where子句。而SQL drop不使用where子句来删除一个数据库。
- 当在内存管理中看到drop命令释放了内存分配。而在数据库中,即使记录被删除,删除的内存空间也不会被释放,因为它并没有删除整个数据库。
- 由于Drop命令直接影响到数据,它不能被回滚。但是DB的删除可以。
- 通过SQL DELETE查询,一个数据库表的全部内容被删除。在目标表上,删除权限是运行DELETE查询的必要条件。如果在DELETE中使用WHERE子句,选择权限也是必要的。
SQL DROP DB的例子
我们将通过两个不同的例子来了解如何删除一个数据库。
例子#1
SQL代码
* Create a table called Aerolist */
CREATE TABLE Aerolist(AId integer PRIMARY KEY, AName text, Address text, Acity text, Apincode integer);
/* Create a few records in this table */
INSERT INTO Aerolist VALUES(1,'Tomm','seaoe','texas',34567);
INSERT INTO Aerolist VALUES(2,'Lucyyhr','fera','losangles',8976);
INSERT INTO Aerolist VALUES(3,'Frankelin','feraakln','virgincity',7656);
INSERT INTO Aerolist VALUES(4,'Janeee','waltax','westside',44322);
INSERT INTO Aerolist VALUES(5,'Roberttee','yahte','northcal',6754);
/* Display all the records from the table */
SELECT * FROM Aerolist;
下面的截图显示了如何创建一个数据库。
输出
我们可以在下面的截图中看到,一旦使用DROP删除数据库Sunitha,我们就不能再使用该数据库。这就是为什么错误声明显示了一个未知的数据库。
我们可以看到,如果我们尝试使用现有的表,它显示的报告是未知数据库。因为我们已经完全放弃了这个数据库。
例子#2
代码
BEGIN TRANSACTION;
/* Create a table called covidlist */
CREATE TABLE covidlist(CId integer PRIMARY KEY, firstName text,residence text,Place text,cpincode integer);
/* Create a few records in this table */
INSERT INTO covidlist VALUES(01,'Anoop','lakecity','punjab',1427);
INSERT INTO covidlist VALUES(02,'Divya','robertlak','uttarkhand',1146);
INSERT INTO covidlist VALUES(03,'harish','rahatroad','pinkcity',2456);
INSERT INTO covidlist VALUES(04,'Janki','waltax','karnataka',4582);
INSERT INTO covidlist VALUES(05,'Roberttee','bandra','pune',6754);
COMMIT;
/* Display all the records from the table */
SELECT * FROM covidlist;
输出
常见问题
下面是提到的常见问题。
Q1.DROP数据库是用来做什么的?
答案:DROP数据库。
通过DROP DATABASE语句可以完全删除一个数据库和它的所有表。
Q2.你有一个表,其中有一些要输入的字段,而且数据库已经被删除。创建一个函数,将 "米 "转换为 "厘米"。你能进一步创建一个函数吗?
答:我不能。
不行,我不能创建一个函数或改变一个表的字段,因为数据库已经被用户放弃了。所以,我们不能访问表来完成任务。
结论
我们已经看到了DROP命令的使用及其权限的详细情况,并举了一些例子。