我试图截断一个表,但是为什么它不起作用?数据库查询中一定有问题吗?
$sql = "TRUNCATE TABLE `table_name`"; $result = $connection -> query($sql);
理想情况下,我想一次性截断所有表-有可能吗?
如果您想知道我用来进行数据库查询的类的内容是什么,
#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(); } }
谢谢。
编辑:
下面是我如何调用db对象,
# 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);
谢谢你们的帮助!这是我的答案,
# 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'].'<br/>'; # 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); }