 |
รบกวนสอบถามผู้รู้นะครับ เรื่อง SELECT from MSSQL and INSERT into MySQL |
|
 |
|
|
 |
 |
|
คือตอนนี้จะถามผู้รู้หน่อยครับว่าพอมีแนวทางในการดึง ข้อมูลจาก MSSQL 2000 แล้วนำไป เก็บลง MYSQL (insert Mysql) นะครับ พอดีลองเขียนโค้ดแล้ว มันสามารถ Insert Mysql ได้จริงแต่ว่า
มันดึงมาแต่ Record ล่าสุดที่เรา Insert MSSQL Server 2000 นะครับ
ส่วนโค้ดที่เขียนนะครับ
Code
<?
//set variables for connecting to mssql
$mshostname = "localhost";
$msusername = "sa";
$mspassword = "123456";
$msdbName = "mydb01";
//set variables for connecting to mysql
$myhostname = "localhost";
$myusername = "root";
$mypassword = "password";
$mydbname = "mydb02";
//$mytablename = "";
//connect to mssql server and select database
mssql_pconnect($mshostname,$msusername,$mspassword) OR DIE("MSSQL Database connection failed.");
mssql_select_db($msdbName) or DIE("MSSQL DB unavailable");
//query to get required fields from finesse
$sql_out = "SELECT * FROM table01 ";
//run the query on the finesse database
$query = mssql_query($sql_out);
printf("<table border=1 width=100%%>");
//loop to get each row from mssql
while ($rs = mssql_fetch_array($query)) {
//print results in html table
echo "<tr><td>",$rs["id"];
echo "</td><td>",$rs["username"];
echo "</td><td>",$rs["lastname"];
echo "</td></tr>";
$rs_id=$rs["id"];
$rs_username=$rs["username"];
$rs_lastname=$rs["lastname"];
}
//connect to mysql server, select db and insert row
$conn = mysql_pconnect($myhostname,$myusername,$mypassword);
mysql_select_db('mydb02');
$sql = 'DROP TABLE IF EXISTS `table02`';
mysql_query( $sql, $conn ) or die ("ลบฐานข้อมูลไม่ได้");
$sql = 'CREATE TABLE `table02` (
`id` INT( 4 ) NOT NULL,
`username` VARCHAR( 50 ) NOT NULL,
`lastname` VARCHAR( 50 ) NOT NULL,
PRIMARY KEY ( `id` )
)';
//echo 'Creating table: \'TABLE02\'....';
$result = mysql_query( $sql, $conn );
if($result){
echo "สร้างตางรางข้อมูลเรียบร้อยแล้ว";
echo "<br>";
$sql_in = "INSERT INTO table02 (id,username,lastname) VALUES ('$rs_id','$rs_username','$rs_lastname')";
$result2 = mysql_query($sql_in);
if (! $result2) {
echo ("ไม่สามารถบันทึกลงตารางข้อมูลได้");
}else{
echo ("บันทึกข้อมูลเรียบร้อยแล้วนะคะ");
echo "<br>";
}
}else{
echo "ไม่สามารถส้รางตารางข้อมูลได้";
}
//reconnect to mssql server
mssql_pconnect($mshostname,$msusername,$mspassword) OR DIE("MSSQL Database connection failed during loop.");
mssql_select_db($msdbName) or DIE("MSSQL DB unavailable during loop.");
//close loop
printf("</table>");
?>
ส่วนผลลัพธ์ที่รันไฟล์ php นะครับ

ส่วนผลลัพธ์ที่ได้ของ Mysql นะครับ
รูปภาพ
Tag : - - - -
|
|
 |
 |
 |
 |
Date :
2009-03-21 15:25:53 |
By :
boongerd |
View :
2029 |
Reply :
2 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code ที่สมบูรณ์นะครับ หลังจากแก้ไข้เสร็จ
Code
<?
//set variables for connecting to mssql
$mshostname = "localhost";
$msusername = "sa";
$mspassword = "123456";
$msdbName = "mydb01";
//set variables for connecting to mysql
$myhostname = "localhost";
$myusername = "root";
$mypassword = "password";
$mydbname = "mydb02";
//connect to mssql server and select database
mssql_pconnect($mshostname,$msusername,$mspassword) OR DIE("MSSQL Database connection failed.");
mssql_select_db($msdbName) or DIE("MSSQL DB unavailable");
//query to get required fields from finesse
$sql_out = "SELECT * FROM table01 ";
//run the query on the finesse database
$query = mssql_query($sql_out);
printf("<table border=1 width=100%%>");
//connect to mysql server, select db and insert row
$conn = mysql_pconnect($myhostname,$myusername,$mypassword);
mysql_select_db('mydb02');
//Check table is exit then drop table
$sql = 'DROP TABLE IF EXISTS `table02`';
mysql_query( $sql, $conn ) or die ("ลบฐานข้อมูลไม่ได้");
//Then drop table and Create table
$sql = 'CREATE TABLE `table02` (
`id` INT( 4 ) NOT NULL,
`username` VARCHAR( 50 ) NOT NULL,
`lastname` VARCHAR( 50 ) NOT NULL,
PRIMARY KEY ( `id` )
)';
$result = mysql_query( $sql, $conn );
//Check Result from Query
if($result){
echo "สร้างตางรางข้อมูลเรียบร้อยแล้ว";
echo "<br>";
}else{
echo "ไม่สามารถส้รางตารางข้อมูลได้";
}
//loop to get each row from mssql
while ($rs = mssql_fetch_array($query))
{
$rs_id=$rs["id"];
$rs_username=$rs["username"];
$rs_lastname=$rs["lastname"];
// Insert Data to table
$sql_in = "INSERT INTO table02 (id,username,lastname) VALUES ('$rs_id','$rs_username','$rs_lastname')";
$result2 = mysql_query($sql_in, $conn);
//Check Result from Query
if (! $result2) {
echo ("ไม่สามารถบันทึกลงตารางข้อมูลได้");
}else{
echo ("บันทึกข้อมูลเรียบร้อยแล้วนะคะ");
echo "<br>";
}
//close loop while
}
?>
|
 |
 |
 |
 |
Date :
2009-03-21 21:22:49 |
By :
boongerd |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|