mysql 数据库表格移植_MySQL-数据库移植问题

通过PHP脚本实现SQL Server中的mydb数据库user表数据迁移到MySQL的mydb数据库,使用odbc_connect连接SQL Server,通过mysql_pconnect连接MySQL,逐条读取并插入数据,同时对datetime字段进行转换。
摘要由CSDN通过智能技术生成

还是写程序吧,程序实现更灵活些,可以通过下面的php脚本来实现sql server中mydb数据库的user表中数据向mysql中mydb数据库导入:

$cnx = odbc_connect('web', 'admin', '123456');

//'web'是sqlserver中mydb的数据源名,

'admin'是访问mydb的用户名,'123456'是访问mydb的密码

$cur= odbc_exec( $cnx, 'select * from user' );

//打开sql server中mydb数据库的user表

$num_row=0;

$conn=mysql_pconnect("localhost","root","123456");

// 连接mysql

@mysql_select_db('mydb',$conn) or

die("无法连接到数据库,请与管理员联系!");

//打开mysql的mydb数据库

while( odbc_fetch_row( $cur ))

//从sql server的mydb库中的user表逐条取出数据,如果对数据进行选择,

可在前面的select语句中加上条件判断

{

$num_row++;

$field1 = odbc_result( $cur, 1 );

// 这里的参数i(1,2,3..)指的是记录集中的第i个域,

你可以有所选择地进行选取,fieldi得到对应域的值,然后你可以对fieldi进行操作

$field2 = odbc_result( $cur, 2 );

$field3 = odbc_result( $cur, 3 );

$field4 = odbc_result( $cur, 4 );

$field5 = odbc_result( $cur, 5 );

$field6 = odbc_result( $cur, 6 );

$field5 = timetoint($field5); //这里是对sql server中的datetime类型

的字段进行相应转换处理,转换成我所需要的int型

$querystring = "insert into user

(id,name,username,password,recdate)

values('$field1','$field2','$field3','$field4','$field5')" ;

mysql_query($querystring,$conn);

}

function timetoint($str){

$arr1=split(" ",$str);

$datestr=$arr1;

$timestr=$arr1[1];

$arr_date=split("-",$datestr);

$arr_time=split(":",$timestr);

$year=$arr_date[0];

$month=$arr_date[1];

$day=$arr_date[2];

$hour=$arr_time[0];

$minute=$arr_time[1];

$second=$arr_time[2];

$time_int=mktime($hour,$minute,$second,$month,$day,$year);

return $time_int;

}

?>

将该段脚本存成sql.php,在服务器上执行,就可以将服务器上sql server中mydb数据库的user表中的数据导入到mysql中mydb数据库的user表中去。其他表的操作与此雷同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值