php数据写入dbf php写入数据到数据库

如何用php将mysql表导出为dbf文件

?

成都创新互联长期为近千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为梨林企业提供专业的网站制作、网站建设梨林网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。

include_once("include.php");

$card=445;//接收$card

//英文字段转中文字段

function field_conv($en,$card){

global $DbUseDatabase,$DbMHost,$DbMUser,$DbMPass;

$db = new newquery($DbUseDatabase,$DbMHost,$DbMUser,$DbMPass);

$db-query("select fieldname from t_cardinfo where cardkind=$card and field ='$en'");

if($db-next_record()){

return $db-f(0);

}

else

return false;

}

function mysql_to_dbf($mysql_datasource,$source_table,$destination_dbf)

{

global $DbUseDatabase,$DbMHost,$DbMUser,$DbMPass,$card;

$link=mysql_connect($DbMHost,$DbMUser,$DbMPass) or exit("不能链接到数据库");

$operate=mysql_select_db($mysql_datasource,$link);

//连mysql数据源

$rs=mysql_query("SELECT * from ".$source_table." limit 0,1");

$number_of_fields=mysql_num_fields($rs);//取字段数量

//不要前面5个底层字段

for($field_counter=5;$field_counter$number_of_fields;$field_counter++)

{

$dbf_field_type=mysql_field_type($rs,$field_counter);

$dbf_field_name=mysql_field_name($rs,$field_counter);

$dbf_field_len=mysql_field_len($rs,$field_counter);

//print($dbf_field_name);

if(isset($point)){

unset($point);

array_pop($field);

}

switch($dbf_field_type)

{

case "string":

$dbf_field_name=substr(mysql_field_name($rs,$field_counter),0,10);

//自由表的字段名不能超过10,请注意

$dbf_field_len=mysql_field_len($rs,$field_counter);

if($dbf_field_len=255)

{

$dbf_field_len--;

}

$dbf_field_type="C";

break;

case "varchar":

$dbf_field_name=substr(mysql_field_name($rs,$field_counter),0,10);

//自由表的字段名不能超过10,请注意

$dbf_field_len=mysql_field_len($rs,$field_counter);

if($dbf_field_len=255)

{

$dbf_field_len--;

}

$dbf_field_type="C";

break;

case "decimal":

$dbf_field_name=substr(mysql_field_name($rs,$field_counter),0,10);

//自由表的字段名不能超过10,请注意

$dbf_field_len=mysql_field_len($rs,$field_counter);

if($dbf_field_len=255)

{

$dbf_field_len--;

}

$dbf_field_type="C";

break;

case "real":

$dbf_field_name=substr(mysql_field_name($rs,$field_counter),0,10);

//自由表的字段名不能超过10,请注意

$dbf_field_len=mysql_field_len($rs,$field_counter);

if($dbf_field_len=255)

{

$dbf_field_len--;

}

$dbf_field_type="N";

$dbf_field_len="10";

$point="0";

break;

case "date":

$dbf_field_type="D";

break;

}

$fieldname=field_conv($dbf_field_name,$card);

$fieldname=subcnstr($fieldname, 9, ''); //字段最长10个字符

$field[0]=$fieldname;

$field[1]=$dbf_field_type;

$field[2]=$dbf_field_len;

if(isset($point)) {

$field[3]=$point;

}

$dbf[]=$field;

}

$d = array_map(null, $dbf);

if (!dbase_create($destination_dbf,$dbf)){

print "strongError!/strong";

exit;

}

//else

// print "strongok!/strong";

//写入字段名完成!

$dbfp=dbase_open ($destination_dbf,2);

$rs=mysql_query("SELECT * from ".$source_table);

$field=mysql_num_fields($rs);

while($row = mysql_fetch_array($rs))

{

$i=0;

for($fieldcounter=5;$fieldcounter$field;$fieldcounter++)//不要前面5个底层字段

{

$field_name=mysql_field_name($rs,$fieldcounter);

$rows[$i]=$row[$field_name];

$i++;

}

dbase_add_record ($dbfp,$rows); //写入记录

}

//print_r($dbffield);

dbase_close($dbfp);

mysql_close($link);

}

mysql_to_dbf("nbw1-SY","t_cardcontent445","c:\a.dbf");

echo "scriptalert('导出完成!')/script";

?

如何用PHP将dbf文件导入到MYSQL数据库中 - 技术问答

要是FOXBASE/FOXPRO的库文件

可以直接用EXCEL打开,然后保存为TXT文件,再用sqlldr导入oracle。

不过EXCEL有行数限制,大概是8W行

也可以直接把DBF文件COPY到FOXPRO环境。

然后在FOXPRO里把这个DBF(库)打印到文本即可,就可以sqlldr导入ORacle。

php写入数据库

PHP向MySQL数据库中写入数据有三个步骤:

1,PHP和MySQL建立连接关系

2,打开MySQL数据库

3,接受页面数据,PHP录入到指定的表中

1、2两步可直接使用一个数据库链接文件即可:conn.php

代码如下

?php

mysql_connect("localhost","root","");//连接MySQL

mysql_select_db("hello");//选择数据库

?

当然,前提是已经安装WEB服务器、PHP和MySQL,并且建立MySQL表“cnbruce”

mysql_connect()中三个参数分别为MySQL地址、MySQL用户名和MySQL密码

然后就是通过WEB页面传递数据,让PHP通过SQL语句将数据写入MySQL数据库指定的表中,比如新建文件 post.php

代码如下

?php

require_once("conn.php");//引用数据库链接文件

$uname = $_GET['n'];//GET方法为URL参数传递

$psw = $_GET['p'];

$psw=md5($psw);//直接使用MD5加密

$sql = "insert into members(username,password) values ('$uname','$psw')";

mysql_query($sql);//借SQL语句插入数据

mysql_close();//关闭MySQL连接

echo "成功录入数据";

?

测试页面: ;p=i0514

即可向MySQL数据库hello的members表中插入新的数据“cnbruce”到username字段、“i0514”到password字段

补充:读取表

读取表中的内容,这里我们用while,可以根据具体情况,用for 或其他的.

代码如下

while($row = mysql_fetch_array($result))

{

echo "div style="height:24px; line-height:24px; font-weight:bold;""; //排版代码

echo $row['Topic'] . "br/";

echo "/div"; //排版代码

如何用PHP将dbf文件导入到MYSQL数据库中

首先要在mysql里面建立一个数据库,结构和mssql里面数据库一样的,然后把mdf文件附加到mssql里面,然后用php连接mssql,从mssql里面读取,然后插入mysql里面


分享标题:php数据写入dbf php写入数据到数据库
本文来源:http://scyanting.com/article/dojggjd.html