查看数据库中某张表的字段个数

Oracle中查询某个表的总字段数,要用SQL语句,或者在PL/SQL里面

select count(column_name) from user_tab_columns where table_name='T_B_AUDITOR'

能够查出来指定的那张表的字段数。

下面是通过大致查看:

select tname,count(*) from col group by tname;
64 T_A_BOOKSTAGEINFO 4 65 T_B_AUDITOR 14 66 T_B_BOOKMANAGEMENT 13 67 T_B_BOOKSTATUSCONFIG 5 68 T_B_CODETREEINFO 8 69 T_B_FILTERWORD 11 70 T_B_ISBNWHITELIST 11 71 T_B_MODEL 10 72 T_B_NOTICE 15 73 T_B_NOTICEACCEPT 11 74 T_B_OPERLOG 10 75 T_B_ORGANIZATIONINFO 18 76 T_B_PREFIXINFO 15 77 T_B_PUBLISHINFO 30 78 T_B_ROLE 8 79 T_B_ROLEMODEL 6 80 T_B_SAMPLEBOOKINFO 89 81 T_B_USER 26 82 T_B_USERANDROLE 6 83 T_B_USERLOGIN 8 84 T_B_USERMODEL 6


此时我就联想到了mysql上面去:

直接利用函数来解决:

mysql> desc test; +---------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(10) | YES | | NULL | | | address | varchar(30) | YES | | NULL | | +---------+-------------+------+-----+---------+----------------+ 3 rows in set (0.01 sec) mysql> select found_rows(); +--------------+ | found_rows() | +--------------+ | 3 | +--------------+ 1 row in set (0.01 sec)
还有就是利用系统表:

mysql> use information_schema Database changed mysql> select count(*) from columns where table_name="test"; +----------+ | count(*) | +----------+ | 3 | +----------+ 1 row in set (0.00 sec)
在mysql中想要知道数据库中有多少个库:

mysql> select * from schemata; +--------------+--------------------+----------------------------+------------------------+----------+ | CATALOG_NAME | SCHEMA_NAME | DEFAULT_CHARACTER_SET_NAME | DEFAULT_COLLATION_NAME | SQL_PATH | +--------------+--------------------+----------------------------+------------------------+----------+ | NULL | information_schema | utf8 | utf8_general_ci | NULL | | NULL | mysql | utf8 | utf8_general_ci | NULL | | NULL | test | utf8 | utf8_general_ci | NULL | +--------------+--------------------+----------------------------+------------------------+----------+ 3 rows in set (0.00 sec)
在mysql数据库中有多少张表:

mysql> select table_schema,count(*) from tables group by table_schema; +--------------------+----------+ | table_schema | count(*) | +--------------------+----------+ | information_schema | 17 | | mysql | 17 | | test | 6 | +--------------------+----------+ 3 rows in set (0.00 sec)
其实在系统表information_schema中大多的数据库,表啊都会有记录的。所以要好好研究下这张表呢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值