php 生成SQL格式的mysql备份示例
内容摘要
这篇文章主要为大家详细介绍了php 生成SQL格式的mysql备份示例,具有一定的参考价值,可以用来参考一下。
php读取数据库生成一条一条的sql语句,可以用作mysql的备份,php生成sql
php读取数据库生成一条一条的sql语句,可以用作mysql的备份,php生成sql
文章正文
这篇文章主要为大家详细介绍了php 生成SQL格式的mysql备份示例,具有一定的参考价值,可以用来参考一下。
php读取数据库生成一条一条的sql语句,可以用作mysql的备份,php生成sql格式的mysql备份,对此感兴趣的朋友,看看idc笔记做的技术笔记。经测试代码如下:
/**
* 生成一条sql语句,用作mysql的备份
*
* @param
* @arrange (www.idcnote.com)
**/
if (!function_exists('mysql_dump')) {
function mysql_dump($database) {
$query = '';
$tables = @mysql_list_tables($database);
while ($row = @mysql_fetch_row($tables)) { $table_list[] = $row[0]; }
for ($i = 0; $i < @count($table_list); $i++) {
$results = mysql_query('DESCRIBE ' . $database . '.' . $table_list[$i]);
$query .= 'DROP TABLE IF EXISTS `' . $database . '.' . $table_list[$i] . '`;' . lnbr;
$query .= lnbr . 'CREATE TABLE `' . $database . '.' . $table_list[$i] . '` (' . lnbr;
$tmp = '';
while ($row = @mysql_fetch_assoc($results)) {
$query .= '`' . $row['Field'] . '` ' . $row['Type'];
if ($row['Null'] != 'YES') { $query .= ' NOT NULL'; }
if ($row['Default'] != '') { $query .= ' DEFAULT \'' . $row['Default'] . '\''; }
if ($row['Extra']) { $query .= ' ' . strtoupper($row['Extra']); }
if ($row['Key'] == 'PRI') { $tmp = 'primary key(' . $row['Field'] . ')'; }
$query .= ','. lnbr;
}
$query .= $tmp . lnbr . ');' . str_repeat(lnbr, 2);
$results = mysql_query('SELECT * FROM ' . $database . '.' . $table_list[$i]);
while ($row = @mysql_fetch_assoc($results)) {
$query .= 'INSERT INTO `' . $database . '.' . $table_list[$i] .'` (';
$data = Array();
while (list($key, $value) = @each($row)) { $data['keys'][] = $key; $data['values'][] = addslashes($value); }
$query .= join($data['keys'], ', ') . ')' . lnbr . 'VALUES (\'' . join($data['values'], '\', \'') . '\');' . lnbr;
}
$query .= str_repeat(lnbr, 2);
}
return $query;
}
}
/*** 来自php教程(www.idcnote.com) ***/
注:关于php 生成SQL格式的mysql备份示例的内容就先介绍到这里,更多相关文章的可以留意
代码注释