精华内容
下载资源
问答
  • 转载来源:...二、查看MySQL数据(table)MySQL字符集。三、查看MySQL数据列(column)MySQL字符集。1.查看数据库编码格式2....

    转载来源:http://www.cnblogs.com/shootercheng/p/5836657.html

    =============================================

    一、查看MySQL数据库服务器和数据库MySQL字符集。

    二、查看MySQL数据表(table)的MySQL字符集。

    三、查看MySQL数据列(column)的MySQL字符集。

    1.查看数据库编码格式

    2.查看数据表的编码格式

    3.创建数据库时指定数据库的字符集

    mysql>create database character set utf8;

    4.创建数据表时指定数据表的编码格式

    create table tb_books (

    name varchar(45) not null,

    price double not null,

    bookCount int not null,

    author varchar(45) not null ) default charset = utf8;

    5.修改数据库的编码格式

    mysql>alter database character set utf8;

    6.修改数据表格编码格式

    mysql>alter table character set utf8;

    7.修改字段编码格式

    mysql>alter table change character set utf8;

    mysql>alter table user change username username varchar(20) character set utf8 not null;

    8.添加外键

    mysql>alter table tb_product add constraint fk_1 foreign key(factoryid) references tb_factory(factoryid);

    mysql>alter table add constraint foreign key REFERENCES ;

    9.删除外键

    mysql>alter table tb_people drop foreign key fk_1;

    mysql>alter table drop foreign key ;

    展开全文
  • 本文章给各位朋友简单的介绍一下关于mysql中查看数据库中所有表的记录数实现方法,有需了的朋友可参考。如果使用mysql的版本5.0及以上,可以通过查询information_schema库中的tables表来获取,该表中使用table_...

    本文章给各位朋友简单的介绍一下关于mysql中查看数据库中所有表的记录数实现方法,有需了的朋友可参考。

    如果使用mysql的版本在5.0及以上,可以通过查询information_schema库中的tables表来获取,该表中使用table_rows记录表的行数信息。例如查看库testdb中所有表的记录数:

    代码如下

    use information_schema;

    table_name,table_rows from tables

    where TABLE_SCHEMA = 'testdb'

    order by table_rows desc;

    不过需要注意的是,对于InnoDB表,table_rows行计数仅是大概估计值。

    另外一种办法还是借助information_schema库的tables表,来拼接出一个条sql语句,例如:

    代码如下

    use information_schema;

    select concat(

    'select "',

    TABLE_name,

    '", count(*) from ',

    TABLE_SCHEMA,

    '.',

    TABLE_name,

    ' union all'

    ) from tables

    where TABLE_SCHEMA='testdb';

    记录一下mysql中查看所有表的记录数:

    TABLE_SCHEMA : 名

    TABLE_NAME:表名

    ENGINE:所使用的存储引擎

    TABLES_ROWS:记录数

    DATA_LENGTH:数据大小 得到的结果是以字节为单位,除1024为K,除1048576(=1024*1024)为M

    INDEX_LENGTH:索引大小

    代码如下

    use information_schema;

    select table_schema,table_name,table_rows from tables order by table_rows desc;

    查看指定大小:

    代码如下

    SELECT sum(DATA_LENGTH)+sum(INDEX_LENGTH) FROM information_schema.TABLES where

    TABLE_SCHEMA='数据库名';

    得到的结果是以字节为单位,除1024为K,除1048576(=1024*1024)为M

    本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

    本文系统来源:php中文网

    展开全文
  • 前言mysql中有一个默认的数据表...再简单点,这台MySQL服务器上,到底有哪些数据库、各个数据库有哪些表,每张表的字段类型是什么,各个数据库要什么权限才能访问,等等信息都保存在information_schema表里面,所...

    前言

    在mysql中有一个默认的数据表information_schema,information_schema这张数据表保存了MySQL服务器所有数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。

    再简单点,这台MySQL服务器上,到底有哪些数据库、各个数据库有哪些表,每张表的字段类型是什么,各个数据库要什么权限才能访问,等等信息都保存在information_schema表里面,所以请勿删改此表。整理了一份328页MySQLPDF文档

    代码

    1,切换数据库

    use information_schema;

    复制代码

    2,查看数据库使用大小

    select concat(round(sum(data_length/1024/1024),2),’MB’) as data from tables where table_schema=’DB_Name’ ;

    复制代码

    3,查看表使用大小

    select concat(round(sum(data_length/1024/1024),2),’MB’) as data from tables where table_schema=’DB_Name’ and table_name=’Table_Name’;

    复制代码

    网上找的一个,亲测可用:

    先进去MySQL自带管理库:information_schema

    然后查询 data_length,index_length

    你自己的数据库名:dbname

    你自己的表名:tablename

    mysql> use information_schema;

    Database changed

    mysql> select data_length,index_length

    -> from tables where

    -> table_schema='dbname'

    -> and table_name = 'tablename';

    +-------------+--------------+

    | data_length | index_length |

    +-------------+--------------+

    | 166379520 | 235782144 |

    +-------------+--------------+

    row in set (0.02 sec)

    mysql> select concat(round(sum(data_length/1024/1024),2),'MB') as data_length_MB,

    -> concat(round(sum(index_length/1024/1024),2),'MB') as index_length_MB

    -> from tables where

    -> table_schema='dbname'

    -> and table_name = 'tablename';

    +----------------+-----------------+

    | data_length_MB | index_length_MB |

    +----------------+-----------------+

    | 158.67MB | 224.86MB |

    +----------------+-----------------+

    row in set (0.03 sec)

    1.查看所有数据库容量大小

    select

    table_schema as '数据库',

    sum(table_rows) as '记录数',

    sum(truncate(data_length/1024/1024, 2)) as '数据容量(MB)',

    sum(truncate(index_length/1024/1024, 2)) as '索引容量(MB)'

    from information_schema.tables

    group by table_schema

    order by sum(data_length) desc, sum(index_length) desc;

    ```

    ### 2.查看所有数据库各表容量大小

    ```sql

    select

    table_schema as '数据库',

    table_name as '表名',

    table_rows as '记录数',

    truncate(data_length/1024/1024, 2) as '数据容量(MB)',

    truncate(index_length/1024/1024, 2) as '索引容量(MB)'

    from information_schema.tables

    order by data_length desc, index_length desc;

    复制代码

    3.查看指定数据库容量大小

    例:查看mysql库容量大小

    select

    table_schema as '数据库',

    sum(table_rows) as '记录数',

    sum(truncate(data_length/1024/1024, 2)) as '数据容量(MB)',

    sum(truncate(index_length/1024/1024, 2)) as '索引容量(MB)'

    from information_schema.tables

    where table_schema='mysql';

    复制代码

    4.查看指定数据库各表容量大小

    例:查看mysql库各表容量大小

    select

    table_schema as '数据库',

    table_name as '表名',

    table_rows as '记录数',

    truncate(data_length/1024/1024, 2) as '数据容量(MB)',

    truncate(index_length/1024/1024, 2) as '索引容量(MB)'

    from information_schema.tables

    where table_schema='mysql'

    order by data_length desc, index_length desc;

    select concat(round(sum(data_length/1024/1024),2),'MB') as data_length_MB, concat(round(sum(index_length/1024/1024),2),'MB') as index_length_MB

    from tables

    where table_schema='passport' and table_name='tb_user_info';

    复制代码

    -- 569.98MB 141.98MB

    select concat(round(sum(data_length/1024/1024),2),'MB') as data_length_MB, concat(round(sum(index_length/1024/1024),2),'MB') as index_length_MB

    from tables

    where table_schema='passport_v2' and table_name='tb_user_info';

    复制代码

    -- 2128.94MB 285.00MB 整理了一份328页MySQLPDF文档

    展开全文
  • 如果想知道MySQL数据库中每个占用空间、记录行数话,可以打开MySQL information_schema 数据库该库中有一个 TABLES ,这个主要字段分别是: TABLE_SCHEMA : 数据库名 TABLE_NAME:表名 ENGINE:...
  • MySQL 查看数据库表结构 修改表结构 修改字段 修改约束条件 修改表名 删除数据库表 ...实际应用中,当发现某个表的结构不满足要求时,可以使用 alter table 语句来修改表的结构,包括修改表的名称、添...

    MySQL 查看数据库表结构 修改表结构 修改字段 修改约束条件 修改表名 删除数据库表

    查看数据库表结构

    • 可以使用 describe 语句来查看数据表结构,代码如下:

      describe users;
      
    • 在控制台中输入上述语句后的执行结果如下所示:

      在这里插入图片描述

    修改表结构

    • 在实际应用中,当发现某个表的结构不满足要求时,可以使用 alter table 语句来修改表的结构,包括修改表的名称、添加新的字段、删除原有的字段、修改字段类型、索引及约束,还可以修改存储引擎及字符集等。修改表的语法格式如下:

      alter table 表名 action[,action]...;
      
    • 其中,每个动作(action)是对表所做的修改,MySQL 支持一条 alter table 语句带多个动作,中间用逗号隔开。下面详细介绍一下几种常用的修改

    • 1、修改字段

      • (1)添加新字段

        • 向表里添加新字段可以通过在 action 语句中使用 add 关键字来实现,语法格式如下:

          alter table 表名 add 新字段名 数据类型 [约束条件][first|after 字段名];
          
        • 向表中添加新字段时通常需要指定新字段在表中的位置,如果没有指定 first 或者 after 关键字,则在表的末尾添加新字段,否则在指定位置添加新字段

        • 例如,为用户表 users 添加一个 address 字段,数据类型为 varchar(50),非空约束,可以使用如下的 SQL 语句:

          alter table users add address varchar(50) not null;
          
        • 若要在 users 表中的 sex 字段后增加一个 phone 字段,数据类型为 varchar(20),非空约束,则对应的 SQL 语句如下:

          alter table users add phone varchar(20) not null after sex;
          
        • 添加字段后的 users 表的结构如下图所示

          在这里插入图片描述

      • (2)修改字段

        • 如果只需要修改字段的数据类型,则使用 change 或者 modify 子句,其语法如下:

          alter table 表名 change 原字段名 新字段名 数据类型;
          alter table 表名 modify 字段名 数据类型;
          
        • 例如,要修改 users 表中的 phone 字段,将数据类型由 varchar(20) 改为 int,并设置默认值为 0,下面两种方法是等价的:

          alter table users change phone phone int unsigned default 0;
          alter tablr users modify phone int unsigned default 0;
          
        • 如果需要修改字段的字段名(以及数据类型)这时就只能使用 change 子句了。例如,将 users 表中的 phone 字段修改为 telephone 字段,且数据类型修改为 varchar(20),则可以使用如下 SQL 语句:

          alter table users change phone telephone varchar(20);
          
      • (3)删除字段

        • 删除表字段的语法格式如下:

          alter table 表名 drop 字段名;
          
        • 例如,将 users 表中的 address 字段删除,则可以使用如下 SQL 语句:

          alter table users drop address;
          
    • 2、修改约束条件

      • (1)添加约束条件

        • 向表的某个字段添加约束条件的语法格式如下:

          alter table 表名 add constraint 约束名 约束类型(字段名);
          
        • 例如,向用户表 users 的 telephone 添加唯一性约束,且约束名为 phone_unique,可以使用如下 SQL 语句:

          alter table users add constraint phone_unique unique(telephone);
          
        • 添加了上述约束条件后,users 表的结构如下所示:

          在这里插入图片描述

        • 如果要向订单表 orders 的 uid 字段添加外键约束,且约束名为 fk_orders_users,可以使用如下 SQL 语句:

          alter table users add constraint fk_orders_users foreign key(uid) references users(uid);
          
      • (2)删除约束条件

        • 若要删除表的主键约束,其语法格式如下:

          alter table 表名 drop primary key;
          
        • 例如,要删除订单表 orders 的主键约束,可以使用如下 SQL 语句:

          alter table orders drop primary key;
          
        • 若要删除表的外键约束,其语法格式如下:

          alter table 表名 drop foreign key 外键约束名;
          
        • 例如,要删除订单表 orders 的外键约束,可以使用如下 SQL 语句:

          alter table drop foreign key fk_orders_users;
          
        • 若要删除字段的唯一性约束,则只需要删除该字段的唯一性索引即可,其语法格式如下:

          alter table 表名 drop index 唯一索引名;
          
        • 例如,要删除用户表 users 的 telephone 字段的唯一性索引,可以使用如下 SQL 语句:

          alter table users drop index phone_unique;
          
    • 3、修改表名

      • 修改表名的语法格式如下:

        alter table 原表名 rename to 新表名;
        
      • 还可以使用 rename table 语句,其语法格式如下:

        rename table 原表名 to 新表名;
        
      • 例如,将 users 表的表名修改为 tbl_users,可以使用以下代码:

        alter table users rename to tbl_users;
        rename table users to tbl_users;
        
    • 4、修改表的其他设置

      • 修改表的其他设置,常用的操作如修改存储引擎、默认字符集等。例如,修改 users 表的存储引擎和默认字符集:

        alter table users engine=MyISAM;
        alter table users default charset=utf8;
        

    删除数据库表

    • 要删除数据库表,可以使用 drop table 语句实现,例如删除 users 表:

      drop table users;
      
    • 在默认情况下,当试图删除一个不存在的表时,系统会报错。例如,以下的情况(orders 表不存在):

      drop table orders;
      
    • 系统会出现 Unknown table “orders” 的错误信息,为避免这种错误,可以使用如下语句:

      drop table if exists orders;
      
    展开全文
  • 今天启动项目时发现项目启动报错Could not open JDBC Connection for transaction,...可以根据以下代码查看数据库中有哪些锁住了 select c.id,c.serial#,c.username,c.osuser,b.owner,b.object_name,a.locked_mod
  • 要分析一个比较大的数据库,里面的表太多了,虽然是中文命名,但2005的Management Studio中查看还是比较麻烦,比如,我想查看具有相同字段名称的表的情况就不好办。于是用SMO写了这个东东。代码比较乱,没有进行...
  • 下面是利用SQL语句创建数据库、存储过程、视图、索引、规则、修改查看数据等方法。所要增加控件如下: Imports System.Data Imports System.Data.SqlClient Public Class Form1  ...
  • 前几天遇到一个问题,就是需要linux下查看一个远程的数据库数据结构和数据。而且由于网络策略问题,还只能这台才能访问,好在这台机器上装了JDK,所以我想自己写一个简单数据结构查看工具吧,其实很简单...
  • 下面是利用SQL语句创建数据库、存储过程、视图、索引、规则、修改查看数据等方法。所要增加控件如下: Imports System.Data Imports System.Data.SqlClient Public Class Form1 Inherits System....
  • 最近做项目需要查看数据用户表的大小,包括记录条数和占用的磁盘空间数目。网上找了很久其中查看MSSQL数据库每个表占用的空间大小 相对还可以。不过它的2、3中方法返回的数据比较多,有些是我们不关心的数据,我...
  • 本文章给各位朋友简单的介绍一下关于mysql中查看数据库中所有表的记录数实现方法,有需了的朋友可参考。如果使用mysql的版本5.0及以上,可以通过查询information_schema库中的tables表来获取,该表中使用table_...
  • 按照书上的代码仔细核对后,发现代码应该是没有问题的,只是查看表的时候是空的,一开始使用的是as中的插件DataBase Navigatoer,我还想是不是自己之前没有用过这个插件,不会操作导致的,后来使用SQLite Expert ...
  • 数据库表的时区更改

    千次阅读 2020-02-17 22:43:29
    今天在代码里引入了表的上传和更新时间的数据,发现了一个小坑,记录下来,避免以后再掉进去。 数据库表的时间不准确 这是由于mysql5.7默认的时区是CST(美国中央时区 缩写),所以要把它改为中国时间就好了。之间...
  • ORACLE 查看数据库中一个或多所占空间大小 开发中遇到什么学习什么: 今天又听领导说,空间不够了,你清下空间?? 我想一个才多大啊。数据库那么大用得着天天清吗,我查查这个多大得 操作开始 上...
  • 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) ... 性能调优或者需要了解某数据库表信息的时候,最直观的方式就是罗列出这个数据所有表的信息,这...
  • 内存溢出与数据库表的问题

    千次阅读 2013-09-10 23:11:57
    内存溢出与锁则不然,一般现象是操作一般时间后系统越来越慢,直到死机,但并不能明确是什么操作上出现的,发生的时间点也没有规律,查看日志或查看数据库也不能定位出问题的代码。 更严重的是内存溢出与数据库...
  • 如果使用mysql的版本5.0及以上,可以通过查询information_schema库中的tables表来获取,该表中使用table_rows记录表的行数信息。例如查看库testdb中所有表的记录数: 代码如下 复制代码 use information_schema...
  • 最近做项目需要查看数据用户表的大小,包括记录条数和占用的磁盘空间数目。网上找了很久其中查看MSSQL数据库每个表占用的空间大小 相对还可以。不过它的2、3中方法返回的数据比较多,有些是我们不关心的数据,我...
  • 如果使用mysql的版本5.0及以上,可以通过查询information_...例如查看库testdb中所有表的记录数:代码如下复制代码use information_schema;select table_name,table_rows from tableswhere TABLE_SCHEMA = 'testd...
  • 在数据库管理中,磁盘空间不足是DBA都会遇到问题,问题比较常见。 --1查看表空间已经使用百分比 Sql代码 select a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024 "used MB",b....
  • 查看Oracle数据库表空间大小,是否需要增加表空间数据文件 ... 在数据库管理中,磁盘空间不足是DBA都会遇到问题,问题比较常见。 --1查看表空间已经使用百分比 Sql代码 selec...
  • 通过PowerDesigner将数据库的物理设计图转化为实际的数据库时,有时候导入数据库成功后,打开一些表查看时,会发现一些属性名称被系统自动地添加上了中括号“[ ]”。 这是因为这些属性命名刚好是相关数据库...
  • 最近做项目需要查看数据用户表的大小,包括记录条数和占用的磁盘空间数目。网上找了很久其中查看MSSQL数据库每个表占用的空间大小 相对还可以。 不过它的2、3中方法返回的数据比较多,有些是我们不关心的数据,我...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,507
精华内容 602
关键字:

在数据库查看表的代码