php - MySQL Stored Procedure: Unknown column 'Table_Name' in 'field list' -
i attempting create first stored procedure with:
delimiter $$ create procedure `getnumrows` ( in tab_name varchar( 40 ) ) begin set @t1 = concat( 'select count(*) ', tab_name) ; prepare stmt3 @t1 ; execute stmt3; deallocate prepare stmt3; end$$
and calling this:
$query = $this->mysqli->query("call getnumrows($this->tablename)"); if($query == false) { die("mysqli error: ".$this->mysqli->error); }
obviously, don't past this, on die:
mysqli error: unknown column 'gps_location' in 'field list'
how can modify stored procedure in order allow table name passed in , able number of rows.
create sp this. likley not looking in right database.
delimiter $$ create procedure `getnumrows` (in database_name varchar(50), in tab_name varchar(40) ) begin set @t1 = concat('select count(*) ',database_name,'.', tab_name,';'); prepare stmt3 @t1 ; execute stmt3; deallocate prepare stmt3; end$$
and make sure call parameter wrapped '
. im not sure how include ' php im sure know :)
call getnumrows('$this->tablename')
edit
ive changed database name passed parameter.
Comments
Post a Comment