mysQl存储过程取得表数据_mysql存储过程,获取指定数据库的某个表的字段信息

DROP PROCEDURE IF EXISTS Proc;

DELIMITER //

CREATE PROCEDURE Proc(database_name varchar(50),table_name_ varchar(50))

BEGIN

DROP table IF EXISTS fk_view;

DROP table IF EXISTS col_view;

CREATE  table fk_view (

SELECT

b.TABLE_NAME 表,

b.COLUMN_NAME AS 栏位,

b.REFERENCED_TABLE_NAME AS 参考表,

b.REFERENCED_COLUMN_NAME AS 参考栏位

FROM

information_schema.KEY_COLUMN_USAGE as b

WHERE

b.TABLE_Schema = database_name

AND b.table_name = table_name_ and  (REFERENCED_TABLE_NAME<>'' or CONSTRAINT_name='PRIMARY')

);

CREATE  table col_view (

SELECT

table_name 表名,

COLUMN_NAME 字段名,

COLUMN_type 字段类型

FROM

information_schema.COLUMNS

WHERE

TABLE_Schema = database_name

AND table_name IN (

SELECT

table_name

FROM

information_schema.TABLES

WHERE

table_type = 'BASE TABLE'

AND TABLE_Schema = database_name

)

AND table_name = table_name_

);

select * from col_view as a LEFT JOIN fk_view as b on b.`栏位`=a.`字段名`;

DROP table IF EXISTS fk_view;

DROP table IF EXISTS col_view;

END//

DELIMITER ;

CALL Proc('hjf_jianzheng','sy_user');

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值