精华内容
下载资源
问答
  • 查询数据库中所有的表
    千次阅读
    2022-04-01 16:08:44

    查询数据库中的所有表格信息:

    SELECT table_name, table_comment, create_time, update_time FROM information_schema.tables
    WHERE table_schema = (SELECT DATABASE())
    ORDER BY create_time DESC

    查询某个表格某一列的信息:

    SELECT column_name, (CASE WHEN (is_nullable = 'no'  &&  column_key != 'PRI') THEN '1' ELSE NULL END) AS is_required, 
    (CASE WHEN column_key = 'PRI' THEN '1' ELSE '0' END) AS is_pk, ordinal_position AS sort, column_comment, 
    (CASE WHEN extra = 'auto_increment' THEN '1' ELSE '0' END) AS is_increment, column_type
    FROM information_schema.columns WHERE table_schema = (SELECT DATABASE()) AND table_name = ('sys_config')
    ORDER BY ordinal_position

    SHOW FULL FIELDS FROM `user`

    更多相关内容
  • 查询数据库中所有表的语句

    千次阅读 2021-01-19 20:28:56
    查询数据库中所有表的语句 [sql] declare @tablename nchar(20) declare @fieldname nchar(50) declare @SQLString nvarchar(300) DECLARE tnames_cursor CURSOR LOCAL FORWARD_ONLY READ_ONLY--声明游标 FOR select...

    查询数据库中所有表的语句 [sql] declare @tablename nchar(20) declare @fieldname nchar(50) declare @SQLString nvarchar(300) DECLARE tnames_cursor CURSOR LOCAL FORWARD_ONLY READ_ONLY--声明游标 FOR select name from sysobjects where type=U;--游

    查询数据库中所有表的语句

    [sql]

    declare @tablename nchar(20)

    declare @fieldname nchar(50)

    declare @SQLString nvarchar(300)

    DECLARE tnames_cursor CURSOR LOCAL FORWARD_ONLY READ_ONLY--声明游标

    FOR select name from sysobjects where type='U';--游标需要用到的列

    open tnames_cursor--打开游标

    FETCH NEXT FROM tnames_cursor INTO @tablename --移动游标给变量赋值,应该与游标需要用到的列一一对应 ,顺序类型应该一致

    WHILE (@@FETCH_STATUS = 0)--循环

    BEGIN

    BEGIN

    set @fieldname='count'+ @tablename

    SET @SQLString = N'select count(*) as '+@fieldname +' from ' +@tablename +' having count(*)>1000';

    EXECUTE dbo.sp_executesql @SQLString

    END

    FETCH NEXT FROM tnames_cursor INTO @tablename --移动游标 给变量赋值 应该与游标需要用到的列一一对应 ,顺序类型应该一致

    END

    CLOSE tnames_cursor--关闭游标

    DEALLOCATE tnames_cursor--释放游标

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

    本文系统来源:php中文网

    展开全文
  • Oracle查询数据库中所有表的记录数

    千次阅读 2021-05-18 16:22:12
    1、Oracle查询数据库中所有表的记录数,但是有可能不准建议用第二种方式进行查询 select t.table_name,t.num_rows from user_tables t 2、创建oracle函数,通过函数查询词表记录数显示当前记录数 create or ...

    1、Oracle查询数据库中所有表的记录数,但是有可能不准建议用第二种方式进行查询

    select t.table_name,t.num_rows from user_tables t
    

    2、创建oracle函数,通过函数中查询词表记录数显示当前记录数

    create or replace function count_rows(table_name in varchar2,
                                          owner      in varchar2 default null)
      return number authid current_user IS
      num_rows number;
      stmt     varchar2(2000);
    begin
      if owner is null then
        stmt := 'select count(*) from "' || table_name || '"';
      else
        stmt := 'select count(*) from "' || owner || '"."' || table_name || '"';
      end if;
      execute immediate stmt
        into num_rows;
      return num_rows;
    end;
    

    之后执行:

    select table_name, count_rows(table_name) nrows from user_tables
    

    就可以准确查询到记录数

    展开全文
  • 最近项目需要获取不同类型数据源中所有表信息以及每张表的字段信息: 表名称,注释,所属数据库,所属模式,表占用空间大小 字段名称,注释,类型,长度,是否为主键 mysql获取这些信息相对简单,postgre需要...

    背景

    最近项目中需要获取不同类型数据源中所有表信息以及每张表的字段信息:
    表名称,注释,所属数据库,所属模式,表占用空间大小
    字段名称,注释,类型,长度,是否为主键

    mysql中获取这些信息相对简单,postgre中需要使用一些内置函数(主要参考postgre中文手册)

    获取表基础信息

    SELECT
    	"table_name",
    	table_catalog,
    	table_schema,
    	pg_size_pretty ( pg_relation_size ( "table_name" ) ),
    	obj_description ( oid, 'pg_class' ) 
    FROM
    	information_schema.tables t1,
    	pg_class t2 
    WHERE
    	table_schema = 'public' 
    	AND t1."table_name" = t2.relname;
    

    表信息
    以上查询的是当前库中’public’模式下所有表的基础信息,其中表大小用到的两个函数:
    在这里插入图片描述
    表注释使用的函数:
    在这里插入图片描述
    这些函数都可以在手册中进行搜索查看。

    获取字段基础信息

    SELECT
    	base."column_name",
    	col_description ( t1.oid, t2.attnum ),
    	base.udt_name,
    	COALESCE(character_maximum_length, numeric_precision, datetime_precision),
    	(CASE
    		WHEN ( SELECT t2.attnum = ANY ( conkey ) FROM pg_constraint WHERE conrelid = t1.oid AND contype = 'p' ) = 't' 
    		THEN 1 ELSE 0 
    	END ) 
    FROM
    	information_schema.COLUMNS base,
    	pg_class t1,
    	pg_attribute t2 
    WHERE
    	base."table_name" = 'sys_org' 
    	AND t1.relname = base."table_name" 
    	AND t2.attname = base."column_name" 
    	AND t1.oid = t2.attrelid 
    	AND t2.attnum > 0;
    

    字段基础信息
    以上查询的是’sys_org’表的字段信息,下面对各个属性进行解释。
    使用到的表:
    在这里插入图片描述
    在这里插入图片描述
    col_description函数在表注释那部分也出现了,这里查询字段注释时需要指定表id(pg_class.oid)以及行号(pg_attribute.attnum)。

    COALESCE函数可以理解为mysql中的ifnull,在当前字段为null时展示下一个字段的内容,
    这里用到的character_maximum_length, numeric_precision, datetime_precision
    分别是字符、数字、时间类型的字段长度。
    关于主键这部分相对复杂,单独列出来讲。

    判断字段是不是主键

    判断字段是否是主键主要用到了pg_constraint这张表
    pg_constraint
    其中contype为约束类型(p为主键约束),conrelid对应表id(pg_class.oid),
    其中conkey存储的是字段行号数组,如果一张表有多个主键都会存在这一个字段中。
    这样我们只需要找到表对应的主键约束信息,通过行号进行关联就行了。
    最后使用any函数,判断数据是否包含在数组中。

    展开全文
  • 查询数据库中所有表

    千次阅读 2021-10-26 15:41:20
    select table_name,TABLE_COMMENT from information_schema.tables where table_schema='lhkc' and table_type='base table';
  • 要查询一个表的数据数量,相信大家很快就想到了select count(1) from table1,但如果我们要查询数据库中所有表的的数据数量要怎么查呢?方法比较多,下面介绍两种本人常用的方法: 一,利用sp_spaceused存储...
  • 1.查询数据库中所有表名称: select table_name from information_schema.tables where TABLE_CATALOG=‘数据库名称’;(包含视图) select table_name from information_schema.tables where TABLE_CATALOG=...
  • Oracle数据库 查询所有表

    万次阅读 2020-07-13 10:47:43
    1. 查询当前数据库下的所有表 select * from all_tables where owner = 'TEST'; 注:all_tables查出来是查得所有用户下的表,当然也包括你登录的用下的表,然后加一个where你要查的那个用户名就可以了。(记得...
  • 查询数据库中所有表名称的语句(参考:http://zhidao.baidu.com/question/535813537.html ) SELECT table_name, table_type, engine FROM information_schema.tables WHERE table_schema = '数据库名称' ORDER BY...
  • sql查询数据库中所有表名

    千次阅读 2022-04-15 10:28:44
    查询数据库所有表名和字段名的语句 SQLSERVER 查询所有表名: SELECT NAME FROM SYSOBJECTS WHERE TYPE='U' SELECT * FROM INFORMATION_SCHEMA.TABLES 查询所有字段名: SELECT NAME FROM SYSCOLUMNS WHERE ID...
  • 前言有时候,需要在数据库查询一些字段的具体信息,而这些字段又存在于不同的表中,那么我们如何来查询呢?在每一个数据库链接的information_schema数据库中,存在这样一张表——COLUMNS,它记录了这个数据库中...
  • 查询数据库中表数量和数据量

    千次阅读 2020-12-21 22:39:01
    二、查询数据库中所有表 # 查询该库表数量 select count(table_name) from TABLES where TABLE_SCHEMA = '库名'; # 查询该库所有表名 select table_name from TABLES where TABLE_SCHEMA = '库名'; 三、查询...
  • 执行SQL如下: select t.table_name,a.comments,t.num_rows from user_tables t left join user_tab_comments a on a.table_name = t.TABLE_NAME 执行结果:
  • 1.查询当前数据库中所有表名及表的备注...----查询所有表  2)select * from user_tab_comments where Table_Name='表名';----查询某一个表的名称及备注 2.查询某一个表的所有列及列的备注:  select * f
  • 数据库查询所有表

    千次阅读 2018-01-12 13:31:13
    --Oracle 查询中所有表名、字段名、字段名说明,查询表的数据条数、表名、中文表名、 --查询所有表名: select t.* from user_tables t; --查询所有字段名: select t.column_name from user_col_comments t; ...
  • ## 1 查询中表的数据量 ``` -- 1.创建临时 create global temporary table test(tab_name varchar(30),row_num int) on commit preserve rows; -- 2.执行语句 'DB'代表用户名 declare count_rows int; v_sql ...
  • SQL查询数据库中所有表的记录条数

    千次阅读 2013-11-06 22:54:23
    CREATE TABLE #temp (TableName VARCHAR (255), RowCnt INT) EXEC sp_MSforeachtable 'INSERT INTO #temp SELECT ''?'', COUNT(*) FROM ?' SELECT TableName, RowCnt FROM #temp ORDER BY RowCnt desc ...
  • 第1步:创建一个,用来存储包含该值的数据和列名 CREATE TABLE dest ( table_name VARCHAR (60), column_name VARCHAR (60) ); 第2步:拼接insert语句 SELECT concat( 'insert into dest select ''', ...
  • 这几天从零构建数仓, 需要将MySQL中一个数据库下的所有表 ,使用Sqoop 同步到 hive数仓,第一次是全量导入,后面是增量的导入hive, 想查看 MySQL 的每个表中是否有updata_time字段。 二、查询 1.COLUMNS表 ...
  • 2、查询当前数据库所有表 # 查询当前数据所有表 select table_name tableName,engine ,table_comment tableComment, create_time createTime from information_schema.tables where table_schema = (select ...
  • Mysql查询指定数据库中所有表

    千次阅读 2020-12-28 11:31:36
    Mysql中查询指定数据库中所有表 话不多说!直接上sql语句 SELECT table_name FROM information_schema.tables WHERE TABLE_SCHEMA = 'configuration' 红色部分替换成自己创建的数据库名即可! Mysql中查询指定...
  • MySQL统计数据库所有表的数据量

    千次阅读 2021-12-13 14:00:52
    mysql统计一个数据库所有表的数据量,最近在做统计想查找一个数据库里基本所有的表数据量,数据量少的通过select count再加起来也是可以的,不过表的数据有点多,有什么快捷的方法?
  • 查询数据库中所有表名称:select table_name from information_schema.tables where table_schema='数据库名称';(包含视图)select table_name from information_schema.tables where table_schema='数据库名称' and ...
  • 利用SQL语句查询数据库中所有表

    万次阅读 2012-10-04 10:49:41
    Oracle: SELECT * FROM ALL_TABLES;系统里有权限的表 SELECT * FROM DBA_TABLES;...1,利用sysobjects系统表 在这个表中,在数据库中创建的每个对象(例如约束、默认值、日志、规则以及存储过程)都有对应一
  • mysql获取某个数据库所有表名 select TABLE_NAME from information_schema.tables where TABLE_SCHEMA="your database name" mysql获取某个所有字段名 select COLUMN_NAME from information_...
  • Db2查询数据库中结构查询

    千次阅读 2021-03-03 15:35:00
    查询数据库中的表 ...查询数据库中的表 select * from syscat.tables where TYPE='T' ...sysibm.syscolumns:表中存放系统中所有表的数据列的描述信息,系统为db2里定义的每个表的每一行建立一条记录。
  • 方法2:exec sp_helpdb(使用存储过程查询)MSQL中查询数据库中所有表方法1:select * from sysobjects;方法2:exec sp_help(使用存储过程查询)MySQL查询所有数据库show databases;MySQL数据库查询所有表show ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,055,442
精华内容 422,176
关键字:

查询数据库中所有的表