sql2000的数据库如何转入mySQL

demonsbj 2009-04-30 09:43:43
我用的sql2000个人版,据说不能充当服务器在xp系统上,我自己也试了,却是连不上,我有2000的脚本和数据库,怎样传到mySQL中,按照网上的教程asp和php的我都不太懂,asp的文件运行还报错,高手帮帮忙
...全文
219 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
demonsbj 2009-04-30
  • 打赏
  • 举报
回复
2009-04-30 09:24:24,656 ERROR [org.hibernate.util.JDBCExceptionReporter] - Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.)
2009-04-30 09:24:24,656 WARN [org.hibernate.cfg.SettingsFactory] - Could not obtain connection metadata
这是我的tommcat启动时的错误,能帮忙指教一下吗
liangCK 2009-04-30
  • 打赏
  • 举报
回复
先安装MySQL ODBC
htl258_Tony 2009-04-30
  • 打赏
  • 举报
回复
一种不错的从SQL转Mysql数据库的方法

年初的时候一直在做一个网站MSSQL2000->MySQL5的迁移工作,因为采用了不同的程序系统,所以主要问题在数据的迁移。由于2个系统数据库结构差异非常大,不方便采取SQLSERVER里导入MYSQL的ODBC数据源的功能(也不推荐这么做,字段类型等不同点会搞死人的~),因此就在WINDOWS下自己写PHP脚本从SQLSERVER里读数据,然后按照新系统的需要处理之后插入MYSQL里面,灵活也比较方便。实际过程主要有下面几个问题:

1、数据库的连接,主要是连接SQLSERVER。主要有3种方法:

1.1利用PHP中的mssql_系列函数,这个与使用mysql_系列函数类似,不过要打开php.ini中相关扩展(extension=php_mssql.dll)。

1.2利用ODBC连接,由于抽象了具体数据库,所以没有办法利用数据表字段名=>数组键名的特性,在针对具体应用时不是很方便,代码形式:

$conn=odbc_connect("datasource","username","password");
$sql="select*fromnews";
$cur=odbc_exec($conn,$sql);
while(odbc_fetch_row($cur)){
$field1=odbc_result($cur,1);
$field2=odbc_result($cur,2);
//dosomething
}


1.3使用PDO-PHP5中加入数据对象抽象层,作为官方推出的数据访问接口,优点有很多,比如支持参数绑定以防止SQL注入;对于不同数据库加载不同驱动即可,程序代码是一致的,便于移植等等,相信应该是大势所趋。不过由于用了PHP5全新的面向对象特性,需要PHP5的支持,5.1可以直接使用,5需要装PECL,另外还要修改PHP.ini,增加:extension=php_pdo_mysql.dll和extension=php_pdo_mssql.dll,实际代码如下:

try{
$DBH=newPDO("mssql:dbname=XXX;host=localhost", 
"root","password");//ConnecttoDB
}catch(PDOException$e){
print"Error!:".$e->getMessage();//ErrorMessage
die();
}
$stmt=$DBH->prepare("SELECT*FROMnews");//StmtHandle$stmt
if($stmt->execute()){
while($row=$stmt->fetch()){
//dosomething
}
}
$stmt2=$mssql->prepare("INSERTINTOnews 
(title,author)VALUES(:title,:author)");
$stmt2->bindParam(':title',$title);
$stmt2->bindParam(':author',$author);
$stmt2->execute();
$DBH=null;//CloseConnection这里要提醒下的是MSSQL里面是没有MYSQL中LIMIT这个语法的。

http://www.chinaz.com/Program/Mysql/05262c942008.html
参考
百年树人 2009-04-30
  • 打赏
  • 举报
回复
[Quote=引用楼主 demonsbj 的帖子:]
我用的sql2000个人版,据说不能充当服务器在xp系统上,我自己也试了,却是连不上,我有2000的脚本和数据库,怎样传到mySQL中,按照网上的教程asp和php的我都不太懂,asp的文件运行还报错,高手帮帮忙
[/Quote]

谣言...

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧