精华内容
下载资源
问答
  • MySQL删除表的三种方式

    万次阅读 2020-06-08 00:40:17
    文章目录drop tabletruncate (table)delete from三种方式的区别用法总结 drop table drop 是直接删除表信息,速度最快,但是无法找回数据 例如删除 user 表: ...delete 是删除表中的数据,不删除表结构,

    drop table

    drop 是直接删除表信息,速度最快,但是无法找回数据

    例如删除 user 表:

    drop table user;
    

    truncate (table)

    truncate 是删除表数据,不删除表的结构,速度排第二,但不能与where一起使用

    例如删除 user 表:

    truncate table user;
    

    delete from

    delete 是删除表中的数据,不删除表结构,速度最慢,但可以与where连用,可以删除指定的行

    例如删除user表的所有数据

    delete from user;
    

    删除user表的指定记录

    delete from user where user_id = 1;
    

    三种方式的区别

    相同点

    • truncate和不带where子句的delete,drop都会删除表内的数据;

    • drop,truncate都是DDL语句(数据定义语言),执行后会自动提交;

    不同点

    • 语句类型:delete语句是数据库操作语言(DML),truncate,drop是数据库定义语言(DDL);
    • 效率:一般来说 drop > truncate> delete;
    • 是否删除表结构:truncate和delete 只删除数据不删除表结构,truncate 删除后将重建索引(新插入数据后id从0开始记起),而 delete不会删除索引 (新插入的数据将在删除数据的索引后继续增加),drop语句将删除表的结构包括依赖的约束,触发器,索引等;
    • 安全性:drop和truncate删除时不记录MySQL日志,不能回滚,delete删除会记录MySQL日志,可以回滚;
    • 返回值:delete 操作后返回删除的记录数,而 truncate 返回的是0或者-1(成功则返回0,失败返回-1);

    小知识

    delete 与 delete from 区别

    如果只针对一张表进行删除,则效果一样;如果需要联合其他表,则需要使用from

    delete tb1 from tb1 m where id in (select id from tb2);
    

    用法总结

    • 希望删除表结构时,用 drop;

    • 希望保留表结构,但要删除所有记录时, 用 truncate;

    • 希望保留表结构,但要删除部分记录时, 用 delete。

    展开全文
  • 删除普通表,并未真正删除表,只是把该表放在回收站中。 drop table student_infor; 删除带约束的表 drop table tb_date_test cascade constraints; 查看回收站 从回收站中,可以看到已经被删除的两个表,还可以...

    删除普通表,并未真正删除表,只是把该表放在回收站中。

    drop table student_infor;
    

    删除带约束的表

    drop table tb_date_test cascade constraints;
    

    查看回收站

    在这里插入图片描述
    从回收站中,可以看到已经被删除的两个表,还可以看到表原来的名字、在回收站中的名字及删除日期。也可以使用SQL语句select * from recyclebin查看回收站中的对象。
    清空回收站中指定的表
    在这里插入图片描述
    清空回收站中的所有表

    purge recyclebin;
    

    一次性彻底删除表

    drop table tb_maintence purge;
    

    purge指示一次性彻底删除表,不把该表放入回收站

    回收站知识点补充

    在oracle中,当删除一个表时,oracle并没有真正删除该表,而是把该表重命名,然后扔到回收站中,使用purge命令来清空回收站,将会释放表占用的空间,把这些空间返回给表空间,成为表空间中的自由空间。

    一旦空间吃紧,oracle会自动清空回收站中的对象。在oracle清空前,可以找回被删除的对象,就是把被删除的对象从回收站中捡回来,即所谓的闪回技术

    从回收站中还原被删除的表instructor

    flashback table instructor to before drop
    

    还原并重命名该表

    flashback table instructor to before drop rename to instructor_restore;
    

    使用desc命令查看表instructor_restore是否已经捡回。

    展开全文
  • sql删除表结构_SQL删除表

    千次阅读 2020-07-16 17:44:52
    sql删除表结构In a real-time situation, there are scenarios when we would like to remove the table from the database. Let us discuss in detail about the process of removing a table from the database. ...

    sql删除表结构

    In a real-time situation, there are scenarios when we would like to remove the table from the database. Let us discuss in detail about the process of removing a table from the database.

    在实时情况下,有些情况下我们想从数据库中删除表。 让我们详细讨论从数据库中删除表的过程。

    SQL删除表 (SQL DROP TABLE)

    The SQL DROP TABLE statement informs the database that a particular table needs to be removed. SQL DROP TABLE command removes all the data, indexes, triggers, constraints and permission specifications for that table.

    SQL DROP TABLE语句通知数据库需要删除特定的表。 SQL DROP TABLE命令删除该表的所有数据,索引,触发器,约束和权限规范。

    We will use the following three databases for better understanding DROP Table.

    我们将使用以下三个数据库来更好地理解DROP表。

    1. MySQL

      MySQL
    2. PostgreSQL

      PostgreSQL
    3. SQL Server

      SQL服务器

    MySQL删除表 (MySQL Drop Table)

    Syntax

    句法

    DROP TABLE table_name;

    In the syntax above, table_name is the table that needs to be dropped.

    在上面的语法中,table_name是需要删除的表。

    Let us try to understand the SQL DROP TABLE using an example.

    让我们尝试使用一个示例来理解SQL DROP TABLE。

    Create a table Customer using the following SQL COMMAND.

    使用以下SQL命令创建表Customer。

    CREATE TABLE `test`.`customer` 
    ( `CustomrId` INT NOT NULL, `CustomerName` VARCHAR(45) NULL,
      `ProductId` VARCHAR(45) NOT NULL, `State` VARCHAR(45) NULL, 
      PRIMARY KEY (`CustomrId`, `ProductId`), 
      UNIQUE INDEX `CustomrId_UNIQUE` (`CustomrId` ASC) VISIBLE);

    Check if the table exists using the SQL SELECT statement as shown in the below image.

    如下图所示,使用SQL SELECT语句检查表是否存在。

    Check If Table Exists

    Check If Table Exists Using SQL SELECT

    使用SQL SELECT检查表是否存在

    Now we will remove the table using SQL DROP TABLE command.

    现在,我们将使用SQL DROP TABLE命令删除该表。

    Query

    询问

    DROP TABLE customer;
    SQL DROP Table On MySQL

    SQL DROP Table On MySQL

    MySQL上SQL DROP表

    Executing the above query will remove the customer table along with all the constraints, data, index, etc.

    执行以上查询将删除客户表以及所有约束,数据,索引等。

    PostgreSQL删除表 (PostgreSQL Drop Table)

    Create a Customer table using below query.

    使用下面的查询创建一个Customer表。

    CREATE TABLE "test.customer"
     ( "CustomerId" integer NOT NULL,
       "CustomerName" character varying(45),
       "ProductId" character varying(45),
       "Country" character varying(45),
       PRIMARY KEY ("CustomerId","ProductId") );
    SQL Create Table On PostgreSQL With Multiple Column Primary Key

    SQL Create Table On PostgreSQL

    PostgreSQL上SQL创建表

    Using SQL Select check if the table exists, as shown below.

    使用SQL选择检查表是否存在,如下所示。

    PostgreSQL SELECT Table

    PostgreSQL SELECT Table

    PostgreSQL SELECT表

    Now we will drop the table using below query.

    现在,我们将使用以下查询删除表。

    DROP table public."Customer";
    PostgreSQL DROP Table

    PostgreSQL DROP Table

    PostgreSQL DROP表

    SQL Server删除表 (SQL Server Drop Table)

    Create a Customer table using below query.

    使用下面的查询创建一个Customer表。

    CREATE TABLE customer 
    ( CustomrId INT NOT NULL,
      CustomerName VARCHAR(45) NULL,
      ProductId VARCHAR(45) NOT NULL,
      State VARCHAR(45) NULL,
      PRIMARY KEY (CustomrId, ProductId));
    SQLServer Create Table

    SQLServer Create Table

    SQLServer创建表

    Use SQL select to validate if the table exists.

    使用SQL select验证表是否存在。

    SQLServer SELECT Table

    SQLServer SELECT Table

    SQLServer SELECT表

    Now we will drop the table using below query.

    现在,我们将使用以下查询删除表。

    DROP TABLE dbo.customer;
    SQLServer DROP Table

    SQL Server DROP Table

    SQL Server DROP表

    摘要 (Summary)

    SQL Drop Table command will delete the table and all the data associated with it. So it’s advisable to have a backup first before you actually drop the table.

    SQL Drop Table命令将删除该表以及与其关联的所有数据。 因此,建议您在实际删除表之前先进行备份。

    However, if there are foreign key constraints on the table with another table then the error will be thrown. You will first have to explicitly remove the foreign-key constraints and then drop the table.

    但是,如果在具有另一个表的表上存在外键约束,则将引发错误。 您首先必须明确删除外键约束,然后删除表。

    翻译自: https://www.journaldev.com/25476/sql-drop-table

    sql删除表结构

    展开全文
  • SQL Server中,删除表删除表中数据

    万次阅读 2016-12-22 12:12:23
    SQL Server,我们现在基本上使用的最古老的版本应该是SQL...今天我们就来说说如何使用T-SQL脚本来删除表,以及删除表中的数据。 删除表删除表数据这是两回事!删除表表示不管表中有没有数据,将该数据库表彻底抹去
    SQL Server,我们现在基本上使用的最古老的版本应该是SQL Server 2000吧,应该没有更早的版本了吧?!从SQL Server 2000开始,到SQL Server 2005,2008,2012等,T-SQL的处理能力越来越强。今天我们就来说说如何使用T-SQL脚本来删除表,以及删除表中的数据。

    删除表和删除表数据这是两回事!删除表表示不管表中有没有数据,将该数据库表彻底抹去,不留下任何东西。而删除表数据,只是删除表中的数据行,而表结果依然存在,还可以往表中插入新的数据。

    删除表的T-SQL语句为:
    drop table <表名>
    drop是丢弃的意思,drop table表示将一个表彻底删除掉。

    删除表数据有两种方法:delete和truncate。

    delete的用法如下:
    delete from <表名> [where条件]

    truncate的用法如下:
    truncate table <表名>

    delete和truncate的区别如下:
    1、delete可以删除表中的一条或多条数据,也可以删除全部数据;而truncate只能将表中的全部数据删除。
    2、delete删除表数据后,标识字段不能复用。也就是说如果你把id=10(假如id是标识字段)的那行数据删除了,你也不可能再插入一条数据让id=10.

    3、truncate删除表数据后,标识重新恢复初始状态。默认为初始值为1,也就是说,truncate之后,再插入一条数据,id=1.


    本文转载自:http://www.splaybow.com/post/mssql-delete-truncate-drop.html

    展开全文
  • mysql进阶(二十一)删除表数据

    万次阅读 2016-01-12 19:55:36
    MySQL删除表数据 在MySQL中有两种方法可以删除数据,一种是DELETE语句,另一种是TRUNCATETABLE语句。DELETE语句可以通过WHERE对要删除的记录进行选择。而使用TRUNCATETABLE将删除表中的所有记录。因此,DELETE语句...
  • sql删除表

    千次阅读 2020-04-16 01:41:30
    drop (删除表):删除内容和定义,释放空间。简单来说就是把整个表去掉.以后要新增数据是不可能的,除非新增一个表。 drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger)索引(index);依赖于该表的存储...
  • oracle删除表数据

    万次阅读 2018-05-13 10:40:58
    truncate,意思为截断表,能够不占用资源的全部删除表,优点是速度快,缺点是删除不能恢复,不能按条件删除。 delete,意思为删除,此操作占用redolog,优点能够快速恢复和选择删除,缺点是删除慢,大批量的...
  • Hive操作——删除表(drop、truncate)

    万次阅读 多人点赞 2019-07-02 10:57:30
    我将以下图为例清空iot_devicelocation中的数据,之后再删除表、库等。 首先来看一下iot_deivcelocation中的数据。select * fromiot_deivcelocation。 一、仅删除表中数据,保留表结构 hive> truncate ...
  • Oracle之删除表

    万次阅读 2018-03-06 20:45:50
    TRUNCHAR TABLE tbale_name(删除表中的所有数据,并不是删除表)比delete要快很多SQL&gt; truncate table new_userinfo;表被截断。DROP TABLE table_name (删除表的结构)SQL&gt; drop table new_userinfo;表...
  • 删除表空间

    千次阅读 2018-04-15 17:54:47
    (六)、删除表空间当不再需要表空间及其内容时,~ 可以通过drop tablespace命令~从数据库中删除表空间tablespace: 表空间名称including contents: 删除表空间内所有段and datafiles: 删除关联的操作系统文件...
  • Hive表删除表部分数据

    万次阅读 2018-11-16 11:18:56
    1、hive表删除数据不能使用DELETE FROM table_name 中SQL语句 2、hive表删除数据要分为不同的粒度:table、partition、partition内 一、有partition 1. 删除具体partition alter table table_name drop ...
  • 删除表数据时有 delete 和 truncate 两种方法 删除表的 T-SQL 语句为: drop table mytablename 删除表数据有两种方法:delete 和 truncate。 delete from mytablename [where条件] truncate table ...
  • oracle 删除表空间

    万次阅读 2018-08-21 19:37:13
    删除表空间 数据文件不会删除drop tablespace “tbs4”; 文件还在  数据文件会一起删除drop tablespace tbs4 including contents and datafiles; 文件消失 
  • Mysql删除表时锁表

    千次阅读 2018-05-24 16:03:31
    Mysql删除表时锁表
  • Hive删除表

    万次阅读 2017-10-22 10:51:51
    本章介绍了如何在Hive中删除表。当从Hive Metastore删除表,它删除了表/列的数据及其元数据。它可以是一个正常的表(存储在Metastore)或外部表(存储在本地文件系统); 不论什么类型Hive对待的方式相同。 Drop Table...
  • 如果表不存在,而强行去删除表,SQL会报错;类似的如果表已经存在而强行去创建同名表,SQL会报错。需要一种方法安全地删除和创建表,解决方案的核心在于“exists”关键字。 安全地删除某表(drop table if exists +...
  • Oracle删除用户与删除表

    千次阅读 2018-08-12 19:02:00
    删除用户: drop user user_name cascade; #级联删除该用户下所有的数据对象 删除表:drop table table_name purge; #删除表同时清空回收站
  • Hive删除表中数据

    万次阅读 2019-07-12 11:40:44
    方式一:仅删除表中数据,保留表结构 truncate table 表名; (truncate用于删除所有的行,这个行为在hive元存储删除数据是不可逆的) 或delete from 表名 where 1 = 1 ; (delete用于删除特定条件下的行,使用...
  • 删除表的T-SQL语句为: drop table &lt;表名&gt; drop是丢弃的意思,drop table表示将一个表彻底删除掉。 删除表数据有两种方法:delete和truncate。 delete的用法如下: delete from &lt;表名&...
  • Hbase删除表

    万次阅读 2017-04-21 10:15:29
    用drop命令可以删除表。在删除一个表之前必须先将其禁用。 hbase(main):018:0> disable 'emp' 0 row(s) in 1.4580 seconds hbase(main):019:0> drop 'emp' 0 row(s) in 0.3060 seconds 使用exists 命令验证表...
  • SQLServer删除表

    万次阅读 2019-06-03 16:24:57
    删除表的T-SQL语句为: drop table <表名> drop是丢弃的意思,drop table表示将一个表彻底删除掉。 删除表数据有两种方法:delete和truncate。 delete的用法如下: delete from <表名> [where条件] ...
  • oracle删除表语句

    千次阅读 2019-04-19 16:17:00
    删除表(记录和结构)的语名delete————truncate————drop  DELETE(删除数据表里记录的语句)  DELETEFROM表名WHERE条件;  注意:删除记录并不能释放ORACLE里被占用的数据块表空间.它只把那些被...
  • 在insert所在的类中加一个删除的方法即可, 方法中的代码很简单,一行解决问题 database.execSQL("drop table if exists " + TABLE_NAME); //这个是将表删除 ... //删除表中的数据,表还是要保留的
  • 1、删除表中所有数据,但保留表结构(可用以下两个语句): truncate table 表名; // Primary KEY 重新从1 开始递增 delete from 表名; //Primary KEY 不从1 开始递增...
  • mysql删除表的命令

    万次阅读 2018-10-25 15:31:18
    MySQL 删除表的几种情况: 1 drop table table_name : 删除表全部数据和表结构,会立刻释放磁盘空间, 2 truncate table table_name : 删除表全部数据,保留表结构,立刻释放磁盘空间。(此时可以通过desc ...
  • mysql删除表数据几种情况

    万次阅读 2018-09-01 00:29:07
    1、drop table table_name: 删除表全部数据和表结构,立刻释放磁盘空间,不管是 Innodb 和 MyISAM; 实例,删除学生表: drop table student; 2、truncate table table_name: 删除表全部数据,保留表结构,立刻...
  • sql删除表清除表数据修改表结构

    千次阅读 2016-10-25 16:51:21
    删除表(包括表结构及表数据) drop table student; 清除表数据 truncate table student; 修改表结构 1、添加一列 在student表中添加一列sname alter table student add sname varchar(30); 2、修改列 在student表...
  • 一、删除表drop table 表名;drop table t_userinfo;二、删除表数据(1)DML操作deletedelete from 表名;(2)DDL操作truncatetruncate table 表名;三、恢复(1)恢复删除的表Oracle 10g提供恢复操作flashback ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,926,739
精华内容 770,695
关键字:

如何删除表