mysql 截断多个表,PHP& MySQL:截断多个表

I tried to truncate a table but why is it not working? must something wrong in the database query?

$sql = "TRUNCATE TABLE `table_name`";

$result = $connection -> query($sql);

Ideally, I want to truncate all tables in one go - is it possible?

if you wonder what is inside the class that I use to make the database queries, here is it,

#connects the database and handling the result

class __database {

protected $connection = null;

protected $error = null;

#make a connection

public function __construct($hostname,$username,$password,$database)

{

$this -> connection = new mysqli($hostname,$username,$password,$database);

if (mysqli_connect_errno())

{

printf("Connect failed: %s\n", mysqli_connect_error());

exit();

}

}

...

#performs a query on the database

public function query($query)

{

$result = $this -> connection -> query($query);

if($result)

{

return $result;

}

else

{

$this -> error = $this -> connection -> error;

return false;

}

}

#display error

public function get_error()

{

return $this -> error;

}

#closes the database connection when object is destroyed.

public function __destruct()

{

$this -> connection -> close();

}

}

thanks.

edit:

below is how I call the db object,

# the host used to access DB

define('DB_HOST', 'localhost');

# the username used to access DB

define('DB_USER', 'root');

# the password for the username

define('DB_PASS', 'xxx');

# the name of your databse

define('DB_NAME', 'xxx');

$connection = new __database(DB_HOST,DB_USER,DB_PASS,DB_NAME);

解决方案

thanks for the help guys! here is my answer,

# truncate data from all table

# $sql = "SHOW TABLES IN 1hundred_2011";

# or,

$sql = "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA LIKE '".DB_NAME."'";

# use the instantiated db connection object from the init.php, to process the query

$tables = $connection -> fetch_all($sql);

//print_r($tables);

foreach($tables as $table)

{

//echo $table['TABLE_NAME'].'
';

# truncate data from this table

# $sql = "TRUNCATE TABLE `developer_configurations_cms`";

# use the instantiated db connection object from the init.php, to process the query

# $result = $connection -> query($sql);

# truncate data from this table

$sql = "TRUNCATE TABLE `".$table['TABLE_NAME']."`";

# use the instantiated db connection object from the init.php, to process the query

$result = $connection -> query($sql);

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值