`
jayjayjays
  • 浏览: 215378 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

一段导出数据库的代码

阅读更多
一段导出数据库的代码
2004-06-16          点击: 11
一段导出数据库的代码
<?
//
$dbname="mytest";
$filename="file.sql";
mysql_pconnect ("localhost:3306","root","");
//
function sqldumptable($table) {
global $DB_site;
$tabledump = "DROP TABLE IF EXISTS $table;\n";
$tabledump .= "CREATE TABLE $table (\n";
$firstfield=1;
$fields = mysql_query("SHOW FIELDS FROM $table");
while ($field = mysql_fetch_array($fields)) {
if (!$firstfield) {$tabledump .= ",\n";} else {$firstfield=0;}
$tabledump .= " $field[Field] $field[Type]";
if (!empty($field["Default"])) {$tabledump .= " DEFAULT '$field[Default]'";}
if ($field[Null] != "YES") {$tabledump .= " NOT NULL";}
if ($field[Extra] != "") {$tabledump .= " $field[Extra]";}
}
mysql_free_result($fields);
$keys = mysql_query("SHOW KEYS FROM $table");
while ($key = mysql_fetch_array($keys)) {
$kname=$key['Key_name'];
if ($kname != "PRIMARY" and $key['Non_unique'] == 0) { $kname="UNIQUE|$kname";}
if(!is_array($index[$kname])) { $index[$kname] = array();}
$index[$kname][] = $key['Column_name'];
}
mysql_free_result($keys);

// get each key info
while(list($kname, $columns) = @each($index)){
$tabledump .= ",\n";
$colnames=implode($columns,",");

if($kname == "PRIMARY"){ $tabledump .= " PRIMARY KEY ($colnames)";}
else {
if (substr($kname,0,6) == "UNIQUE") {
// key is unique
$kname=substr($kname,7);
}

$tabledump .= " KEY $kname ($colnames)";

}
}

$tabledump .= "\n);\n\n";

// get data
$rows = mysql_query("SELECT * FROM $table");
$numfields=mysql_num_fields($rows);
while ($row = mysql_fetch_array($rows)) {
$tabledump .= "INSERT INTO $table VALUES(";

$fieldcounter=-1;
$firstfield=1;
// get each field's data
while (++$fieldcounter<$numfields) {
if (!$firstfield) {
$tabledump.=",";
} else {
$firstfield=0;
}

if (!isset($row[$fieldcounter])) {
$tabledump .= "NULL";
} else {
$tabledump .= "'".addslashes($row[$fieldcounter])."'";
}
}

$tabledump .= ");\n";
}
mysql_free_result($rows);

return $tabledump;
}
//函数结束
//
$result = mysql_list_tables ($dbname);
$i = 0;
while ($i < mysql_num_rows ($result)) {
$tb_names[$i] = mysql_tablename ($result, $i);
$dump.=sqldumptable($tb_names[$i])."\n\n\n";
$i++;
}

echo $dump;//可以在浏览器里输出看看
$filehandle=fopen($filename,"w");
fwrite($filehandle,$dump."\n\n\n");
fclose($filehandle);

echo "<p>数据成功导出!</p>";
?>
把$filename="file.sql";改成$filename="file.txt";
分享到:
评论

相关推荐

    PLSQL Developer 导入导出数据库

    ### PL/SQL Developer 导入导出数据库知识点详解 #### 一、概述 在数据库管理过程中,经常需要进行数据的备份与恢复操作。对于Oracle数据库而言,常见的备份方式包括使用命令行工具`expdp`和`impdp`,或者利用第三...

    VB代码 从数据库快速导出数据到EXCEL

    本篇文章将深入解析一段VB代码,该代码旨在从数据库中快速导出数据到Excel文件,涵盖了关键的编程技巧和API使用。 #### 二、代码分析与知识点解读 ##### 1. 错误处理机制:`On Error GoTo comm_err` - **知识点**...

    通过代码导出数据库结构,变成文档

    总结来说,通过代码导出数据库结构并生成文档是一种高效的方法,可以帮助我们更好地管理和共享数据库设计。借助Python等编程语言,结合合适的库和工具,我们可以实现自动化、标准化的数据库文档生成流程,提升工作...

    excel导入导出数据库

    本资源提供了实现Excel导入导出数据的源代码,包含一个jar包,旨在简化这个过程。以下将详细讲解Excel与数据库之间的导入导出操作及其相关知识点。 一、Excel与数据库简介 Excel是一款由Microsoft公司开发的电子...

    EXCEL导入数据库及反向导出 源代码

    4. **数据库连接方法**:代码段展示了如何建立数据库连接(`getConnDB`方法),获取序列的下一个值(`getSequence`方法)。这通常用于为数据库表中的记录生成唯一标识符,例如Oracle数据库中的序列。 5. **SQL查询*...

    将SQL数据库导出文档出来

    在IT行业中,数据库管理是至关重要的任务之一,尤其是在SQL Server这样的大型关系型数据库管理系统中。"将SQL数据库导出文档出来"是指从SQL Server数据库中提取数据和元数据,形成可读性强、易于理解的数据字典。...

    EXCEL导入导出数据库[文].pdf

    这段代码创建了一个名为 `p_exporttb` 的存储过程,该过程可以将 SQL 数据库中的某个表导出到 EXCEL 文件中。 EXCEL 导入导出数据库是实现数据交互和共享的重要手段,通过 OpenRowSet 函数、BCP 命令和存储过程等...

    从sql数据库中导出图片

    这段代码中构建了一个游标`t`,用于遍历目标表中的所有记录。对于每一条记录,都会构建一个BCP命令,该命令将从数据库中查询出指定主键对应的图片数据,并将其导出到指定路径下以主键命名的文件中。如果`@file`参数...

    excel数据导入导出数据库

    #### 一、标题解析:“Excel数据导入导出数据库” 此标题明确了本文档的主要内容是关于如何在C#环境下实现Excel与数据库之间的数据交互功能,具体包括数据的导入(从Excel到数据库)和导出(从数据库到Excel)。...

    JavaGUI工具:导出Oralce数据库脚本

    这段代码展示了如何连接Oracle数据库,获取表的数据,并构建Insert语句。实际应用中,需要根据实际的表结构和数据类型进行调整,处理可能的日期、数字等非字符串类型字段。 对于MS SQL Server,过程基本相同,只是...

    批量导出ORACLE数据库BLOB字段生成文件

    本教程将详细讲解如何批量导出Oracle数据库中的BLOB字段并生成文件,适用于需要定期或一次性处理大量图片或其他BLOB数据的场景。 首先,确保你已经在本地安装了Oracle客户端。Oracle客户端提供了SQL*Plus和其他工具...

    lotus数据库导出SQLServer数据库程序及源代码

    使用ADO通过ODBC链接进行Louts数据读取,在建立一个与SQL server数据库相连的ADO,将读取数据写入SQL server数据库。 安装环境: 首先安装lotus_notes853_win_SC(lotus客户端软件) 然后安装LOTUS_NOTES_SQL_853_...

    thinkPHP实现数据库数据导出Excel表格

    这段代码创建了一个新的Excel工作表,填充了从数据库查询到的数据,然后将其发送到浏览器供用户下载。当然,实际使用时你需要根据自己的数据库模型和数据结构进行适当的调整。 总结一下,使用ThinkPHP实现数据库...

    php导出任意mysql数据库中的表去excel文件

    这段代码会创建一个CSV文件并将其下载到用户的电脑上,文件名为"export_data.csv"。`fputcsv()`函数会将数组转换为CSV格式并写入文件。 如果需要创建XLS文件,可以使用PHPExcel库,它允许你创建更复杂的Excel文件,...

    oracle数据库表,字段信息导出为excel

    Oracle数据库是世界上最流行的数据库管理系统之一,它被广泛用于存储、管理和检索各种业务数据。在数据库管理中,有时候我们需要将数据库的结构信息,如表名、字段类型、字段长度以及注释等导出到Excel文件中,以...

    net 导出数据库

    标题中的"NET 导出数据库"指的是在.NET框架下,使用C#编程语言将数据库中的数据导出到其他格式,例如Excel。描述中提到的方法是从数据库一行行地读取数据,然后将其转换并保存为Excel文件。这个过程涉及到几个关键...

    导出数据库结构

    在这个特定的场景中,我们关注的是“导出数据库结构”这一操作,这通常是为了备份、共享、迁移或分析数据库设计。 "导出数据库结构"是指将Access数据库中的表、查询、报表、窗体、宏等对象的定义转化为另一种格式,...

    Excel数据导出到Access数据库

    总结,将Excel数据导出到Access数据库是一种常见的数据管理策略,尤其在数据量增大、需要更复杂管理时。通过以上步骤,你可以轻松地将Excel中的数据导入Access,从而更好地组织、查询和分析你的数据。不过,要注意...

    Oracle经典教程7——数据库导入导出

    下面以一段具体的`EXP`命令示例来详细解析其工作流程: ```bash D:\&gt;expscott/tiger@my_orcl ``` 这一行代码中,`expscott/tiger@my_orcl`指定了要导出数据的用户`scott`及其密码`tiger`,并指明了数据库服务器名...

    winform导出数据库数据至Excel模板(预览及保存)例程

    本例程提供了一种方法,允许用户将数据表的数据导出到预先设计好的Excel模板中,并且具备预览及保存功能。下面将详细介绍这个过程涉及的关键知识点。 1. **数据连接与查询**: 在C#中,我们可以使用ADO.NET(如...

Global site tag (gtag.js) - Google Analytics