彩世界平台-彩世界时时app-彩世界开奖app苹果下载

热门关键词: 彩世界平台,彩世界时时app,彩世界开奖app苹果下载

您的位置:彩世界平台 > 工作委员会 > 使用SQL语句清空数据库所有表的数据

使用SQL语句清空数据库所有表的数据

发布时间:2019-09-03 08:53编辑:工作委员会浏览(112)

    今日内容介绍
    1.MySQL数据库
    2.SQL语句

    近来发现数据库过大,空间不足,因此打算将数据库的数据进行全面的清理,但表非常多,一张一张的清空,实在麻烦,因此就想利用SQL语句一次清空所有数据.找到了三种方法进行清空.使用的数据库为MS SQL SERVER.
    1.搜索出所有表名,构造为一条SQL语句

    01数据库概念

    • A: 什么是数据库
    • 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,

      用户可以对数据库中的数据进行增加,修改,删除及查询操作。
      
    • B: 什么是数据库管理系统

    • 数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,
      对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中表内的数据。
      

    图片 1declare @trun_name varchar(8000)
    图片 2set @trun_name=''
    图片 3select @trun_name=@trun_name + 'truncate table ' + [name] + ' ' from sysobjects where xtype='U' and status > 0
    图片 4exec (@trun_name)

    02常见的数据库

    * A: 常见的数据库
            MYSQL   :开源免费的数据库,小型的数据库.已经被Oracle收购了.MySQL6.x版本也开始收费。
            Oracle  :收费的大型数据库,Oracle公司的产品。Oracle收购SUN公司,收购MYSQL。
            DB2     :IBM公司的数据库产品,收费的。常应用在银行系统中.
            SQLServer:MicroSoft 公司收费的中型的数据库。C#、.net等语言常使用。
            SyBase  :已经淡出历史舞台。提供了一个非常专业数据建模的工具PowerDesigner。
            SQLite  : 嵌入式的小型数据库,应用在手机端。
            Java相关的数据库:MYSQL,Oracle.
            这里使用MySQL数据库。MySQL中可以有多个数据库,数据库是真正存储数据的地方
    

    该方法适合表不是非常多的情况,否则表数量过多,超过字符串的长度,不能进行完全清理.
    2.利用游标清理所有表

    03数据库和管理系统

    * A: 数据库管理系统
            ----数据库1
                ----数据表1a
                ----数据表1b
            ----数据库2
                -----数据表2a
                -----数据表2b
    

     

    04数据表和Java中类的对应关系

    * A:数据库中以表为组织单位存储数据。
        表类似我们的Java类,每个字段都有对应的数据类型。
        那么用我们熟悉的java程序来与关系型数据对比,就会发现以下对应关系。
            类----------表
            类中属性----------表中字段
            对象----------记录
    

    图片 5declare @trun_name varchar(50)
    图片 6declare name_cursor cursor for
    图片 7select 'truncate table ' + name from sysobjects where xtype='U' and status > 0
    图片 8open name_cursor
    图片 9fetch next from name_cursor into @trun_name
    图片 10while @@FETCH_STATUS = 0
    图片 11begin
    图片 12  exec (@trun_name)
    图片 13 print 'truncated table ' + @trun_name
    图片 14 fetch next from name_cursor into @trun_name
    图片 15end
    图片 16close name_cursor
    图片 17deallocate name_cursor
    图片 18

    05数据表和Java中类的对应关系用户表举例

    * A:举例:
    账务表
    id      name        age 
    1       lisi        23
    2       wang        24
    
    每一条记录对应一个User的对象
    [user1  id = 1 name = lisi  age = 23]
    [user2  id = 2 name = wang  age = 24]
    

     

    06MySQL数据库安装

    A: 安装步骤参见 day28_source《MySQL安装图解.doc》
    B: 安装后,MySQL会以windows服务的方式为我们提供数据存储功能。开启和关闭服务的操作:
        右键点击我的电脑→管理→服务→可以找到MySQL服务开启或停止。
    

    这是我自己构造的,可以做为存储过程调用, 能够一次清空所有表的数据,并且还可以进行有选择的清空表.
    3.利用微软未公开的存储过程

    07数据库在系统服务

    * A:开启服务和关闭服务
    方式1: 我的电脑-----> (右键)管理---->服务和应用程序---->服务----找到MySQL服务右键启动或关闭 
    方式2: 进入dos窗口 使用命令: net start mysql 开启MySQL服务;  命令:net stop mysql 关闭MySql服务
    

     

    08MySQL的登录

    * A: MySQL是一个需要账户名密码登录的数据库,登陆后使用,它提供了一个默认的root账号,使用安装时设置的密码即可登录。
        格式1:cmd>  mysql –u用户名 –p密码
        例如:mysql -uroot –proot
    
        格式2:cmd>  mysql --host=ip地址 --user=用户名 --password=密码
        例如:mysql --host=127.0.0.1  --user=root --password=root
    

    图片 19exec sp_msforeachtable "truncate table ?"

    09SQLYog软件介绍

    * A: 具体参见 《SQLYog配置.doc》
    

     

    10SQL语句介绍和分类

    • A:SQL介绍
      • 前面学习了接口的代码体现,现在来学习接口的思想,接下里从生活中的例子进行说明。
      • 举例:我们都知道电脑上留有很多个插口,而这些插口可以插入相应的设备,这些设备为什么能插在上面呢?
      • 主要原因是这些设备在生产的时候符合了这个插口的使用规则,否则将无法插入接口中,更无法使用。发现这个插口的出现让我们使用更多的设备。
    • B: SQL分类
      • 数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等
      • 数据操作语言:简称DML(Data Manipulation Language),用来对数据库中表的记录进行更新。关键字:insert,delete,update等
      • 数据控制语言:简称DCL(Data Control Language),用来定义数据库的访问权限和安全级别,及创建用户。
      • 数据查询语言:简称DQL(Data Query Language),用来查询数据库中表的记录。关键字:select,from,where等
    • C: SQL通用语法

        SQL语句可以单行或多行书写,以分号结尾
        可使用空格和缩进来增强语句的可读性
        MySQL数据库的SQL语句不区分大小写,建议使用大写,例如:SELECT * FROM user。
        同样可以使用/**/的方式完成注释
      

    该方法可以一次清空所有表,但不能加过滤条件.

    11数据表中的数据类型

    * A:MySQL中的我们常使用的数据类型如下  
        详细的数据类型如下(不建议详细阅读!)
        分类  类型名称    说明 
        整数类型    tinyInt 很小的整数
            smallint    小的整数
            mediumint   中等大小的整数
            int(integer)    普通大小的整数
        小数类型    float   单精度浮点数
            double  双精度浮点数
            decimal(m,d)    压缩严格的定点数
        日期类型    year    YYYY  1901~2155
            time    HH:MM:SS  -838:59:59~838:59:59
            date    YYYY-MM-DD 1000-01-01~9999-12-3
            datetime    YYYY-MM-DD HH:MM:SS 1000-01-01 00:00:00~ 9999-12-31 23:59:59
            timestamp   YYYY-MM-DD HH:MM:SS  1970~01~01 00:00:01 UTC~2038-01-19 03:14:07UTC
        文本、二进制类型    CHAR(M)         M为0~255之间的整数
            VARCHAR(M)      M为0~65535之间的整数
            TINYBLOB    允许长度0~255字节
            BLOB        允许长度0~65535字节
            MEDIUMBLOB  允许长度0~167772150字节
            LONGBLOB    允许长度0~4294967295字节
            TINYTEXT    允许长度0~255字节
            TEXT        允许长度0~65535字节
            MEDIUMTEXT  允许长度0~167772150字节
            LONGTEXT    允许长度0~4294967295字节
            VARBINARY(M)允许长度0~M个字节的变长字节字符串
            BINARY(M)   允许长度0~M个字节的定长字节字符串
    

    12创建数据库操作

    * A: 创建数据库
        格式:
            * create database 数据库名;
            * create database 数据库名 character set 字符集;
        例如:
        #创建数据库 数据库中数据的编码采用的是安装数据库时指定的默认编码 utf8
        CREATE DATABASE day21_1; 
        #创建数据库 并指定数据库中数据的编码
        CREATE DATABASE day21_2 CHARACTER SET utf8;
    
    * B: 查看数据库
        查看数据库MySQL服务器中的所有的数据库:
        show databases;
        查看某个数据库的定义的信息:
        show create database 数据库名;
        例如:
        show create database day21_1;
    
    * C: 删除数据库
        drop database 数据库名称;
        例如:
        drop database day21_2;
    
    * D: 其他的数据库操作命令
        切换数据库:
        use 数据库名;
        例如:
        use day21_1;
    
    * E: 查看正在使用的数据库:
        select database();
    

    13创建数据表格式

    * A:格式:
        create table 表名(
           字段名 类型(长度) 约束,
           字段名 类型(长度) 约束
        );
        例如:
        ###创建分类表
        CREATE TABLE sort (
          sid INT, #分类ID 
          sname VARCHAR(100) #分类名称
        );
    

    14约束

    * A: 约束的作用:
        create table 表名(
               列名 类型(长度) 约束,
               列名 类型(长度) 约束
            );
            限制每一列能写什么数据,不能写什么数据。
    
    * B: 哪些约束:
            主键约束
            非空约束
            唯一约束
            外键约束
    

    15SQL代码的保存

    * A: 当sql语句执行了,就已经对数据库进行操作了,一般不用保存操作
        在SQLyog 中Ctrl + S 保存的是写sql语句。
    

    16创建用户表

    * A: 创建用户表:
        需求:创建用户表,用户编号,姓名,用户的地址
    
        * B: SQL语句
        CREAT TABLE users (
            uid INT,
            uname VARCHAR(20),
            uaddress VARCHAR(200)
        );
    

    本文由彩世界平台发布于工作委员会,转载请注明出处:使用SQL语句清空数据库所有表的数据

    关键词:

上一篇:sqlserver 跨服务器查询

下一篇:没有了