狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频

當(dāng)前位置:系統(tǒng)之家 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

從SQL server數(shù)據(jù)庫導(dǎo)入Mysql數(shù)據(jù)庫的體驗

從SQL server數(shù)據(jù)庫導(dǎo)入Mysql數(shù)據(jù)庫的體驗

更新時間:2024-04-08 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

因工作需要,要將存放在sql server數(shù)據(jù)庫中的數(shù)據(jù)全部導(dǎo)入到mysql數(shù)據(jù)庫中,在網(wǎng)上搜集相關(guān)資料,找到兩種方法,現(xiàn)在分別談?wù)剬λ麄兊目捶ā?
第一種是安裝mysql ODBC,利用sql server的導(dǎo)出功能,選擇mysql數(shù)據(jù)源,進(jìn)行數(shù)據(jù)的直接導(dǎo)出,這種方法很簡便,但是針對實際應(yīng)用有很多弊端,最主要體現(xiàn)就是數(shù)據(jù)類型問題,首先,sql server數(shù)據(jù)庫中
的ntext,image等數(shù)據(jù)類型的數(shù)據(jù)無法直接寫入到mysql數(shù)據(jù)庫中,據(jù)說只要稍加改動就可以,可惜偶這只菜鳥還沒想到如何改動,其次,因為偶在mysql中的數(shù)據(jù)庫設(shè)計中將時間都設(shè)成int型(保存的是時間戳),所以在數(shù)據(jù)導(dǎo)過來后,就會出現(xiàn)沖突,再次,這種方法生成的mysql數(shù)據(jù)表的字段類型都不很合適,所以此種方法我覺得不能提倡。

第二種是利用php或asp腳本來實現(xiàn)數(shù)據(jù)的導(dǎo)入功能,這種方法需要編寫程序,但靈活性大,操作也不是那么困難,一切都盡在你的掌握之中,現(xiàn)簡單介紹一下該方法
前提條件是你的mysql環(huán)境已經(jīng)搭建好了,先建好目標(biāo)數(shù)據(jù)庫,再將所有的表結(jié)構(gòu)用sql語句生成,現(xiàn)在萬事具備,只缺數(shù)據(jù)了。

可以通過下面的php腳本來實現(xiàn)sql server中mydb數(shù)據(jù)庫的user表中數(shù)據(jù)向mysql中mydb數(shù)據(jù)庫導(dǎo)入
<?
$cnx = odbc_connect('web', 'admin', '123456');//'web'是sqlserver中mydb的數(shù)據(jù)源名,'admin'是訪問mydb的用戶名,'123456'是訪問mydb的密碼
$cur= odbc_exec( $cnx, 'select * from user' );//打開sql server中mydb數(shù)據(jù)庫的user表
$num_row=0;
$conn=mysql_pconnect("localhost","root","123456");// 連接mysql
@mysql_select_db('mydb',$conn) or

die("無法連接到數(shù)據(jù)庫,請與管理員聯(lián)系!");//打開mysql的mydb數(shù)據(jù)庫
while( odbc_fetch_row( $cur )) //從sql server的mydb庫中的user表逐條取出數(shù)據(jù),如果對數(shù)據(jù)進(jìn)行選擇,可在前面的select語句中加上條件判斷
{
$num_row++;
$field1 = odbc_result( $cur, 1 ); // 這里的參數(shù)i(1,2,3..)指的是記錄集中的第i個域,你可以有所選擇地進(jìn)行選取,fieldi得到對應(yīng)域的值,然后你可以對fieldi進(jìn)行操作
$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類型的字段進(jìn)行相應(yīng)轉(zhuǎn)換處理,轉(zhuǎn)換成我所需要的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[0];
$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,在服務(wù)器上執(zhí)行,就可以將服務(wù)器上sql server中mydb數(shù)據(jù)庫的user表中的數(shù)據(jù)導(dǎo)入到mysql中mydb數(shù)據(jù)庫的user表中去。其他表的操作與此雷同,就不贅述了。

下面再介紹一下asp腳本實現(xiàn)sql server中mydb數(shù)據(jù)庫的數(shù)據(jù)向mysql中mydb數(shù)據(jù)庫導(dǎo)入
<%
set conn=server.createobject("adodb.connection")
conn.open 'web', 'admin', '123456' // 'web'是sqlserver中mydb的數(shù)據(jù)源名,'admin'是訪問mydb的用戶名,'123456'是訪問mydb的密碼
set rs=server.createobject("adodb.recordset")
sql="select ID,name,username,password,datediff(s,'1970-01-01 00:00:00',recdate)-8*3600,reid,filename,fileContentType,filevalue from senddate" //這條sql語句實現(xiàn)了將datetime類型的recdate字段轉(zhuǎn)化成unix時間戳的int型

rs.open sql,conn,1,3
set conn1=server.createobject("adodb.connection")
conn1.open "myoa","root","q1-d6=7?"
i=1
do while not rs.eof
field1 = rs(0)
field2 = rs(1)
field3 = rs(2)
field4 = rs(3)
field5 = rs(4)
sql1 = "insert into user(ID,name,username,password,recdate)

values("&field1&",'"&field2&"','"&field3&"','"&field4&"',"&field5&")"

conn1.execute sql1
rs.movenext
i=i+1
loop
rs.close
set rs=nothing
conn.close
set conn=nothing
conn1.close
set conn1=nothing

%>

以上兩個是分別采用php腳本和asp腳本對user表的數(shù)據(jù)進(jìn)行由sql server到mysql的導(dǎo)入其間我采用2種回避的方法來避免ntext,image類型數(shù)據(jù)的傳遞,一種是將ntext字段改為nvarchar(4000),因為實際情況,原始數(shù)據(jù)中該字段的數(shù)據(jù)長度都未超過4000個字,所以并沒有出現(xiàn)數(shù)據(jù)截斷,另一個手段是將image類型數(shù)據(jù)取出來寫到文件中,以文件形式保存,將文件路徑存到數(shù)據(jù)庫中,方法見下:

function makeattach(fileContentType,filevalue,i)
select case fileContentType
case "application/msword"
ext="doc"

case "application/vnd.ms-excel"
ext="exl"

case "application/vnd.ms-powerpoint"
ext="pps"

case "application/x-rar-compressed"
ext="rar"

case "application/x-zip-compressed"
ext="zip"

case "image/gif"
ext="gif"

case "image/pjpeg"
ext="jpg"

case "text/plain"
ext="txt"

case else
ext="x"

end select
if ext<>"x" then
set fso=server.createobject("FileSystemObject")
fName="attech"&i&"."&ext
Dir="d:attach"
If fso.FileExists(Dir & fName) Then fso.deletefile Dir & fName
If fName<>"" AND NOT fso.FileExists(Dir & fName) Then
Set strm1=Server.CreateObject("ADODB.Stream")
strm1.Open
strm1.Type=1 'Binary
strm1.Write filevalue
strm1.SaveToFile Dir & fName,2
Set strm1=Nothing
end if
makeattach=fName
end if
end function

這個函數(shù)有3個輸入?yún)?shù),第一個是文件的contentType,第二個是文件的二進(jìn)制數(shù)值,第三個是個可以區(qū)別文件名的變量,先根據(jù)contentType確定所存文件的后綴名,然后就是將二進(jìn)制數(shù)值保存成指定文件名的文件,并將文件名作為輸出參數(shù)返回,將返回的參數(shù)作為數(shù)據(jù)寫到mysql的數(shù)據(jù)庫中保存。
時間匆忙,先總結(jié)到這里,希望這些文字能對有需要的人有些幫助,少走些彎路,感謝您的閱讀。:)

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频
欧美日韩黄视频| 亚洲黄色视屏| 精品不卡一区二区三区| 美女精品网站| 久久影视一区二区| 午夜视频一区在线观看| 波波电影院一区二区三区| 国产欧美69| 欧美草草影院在线视频| 亚洲一区中文日韩| 福利电影一区二区| 国产美女精品| 久久综合九色综合97婷婷女人| 亚洲一区在线观看视频| 成人av资源站| 日本黄色一区二区| 国产精品日韩精品欧美在线| 国产一区 二区 三区一级| 亚洲精品一区二区三区蜜桃久| 欧美剧情片在线观看| 一区二区三区产品免费精品久久75| 成人影视亚洲图片在线| 蜜桃久久av| 亚洲欧洲精品一区二区三区| 国产在线国偷精品产拍免费yy| 国产日产精品一区二区三区四区的观看方式 | 日本韩国欧美在线| 亚洲人成网站在线| 99国产精品久久久| 欧美色综合天天久久综合精品| 亚洲免费在线播放| 欧美一区二区三区久久精品| 在线成人午夜影院| 亚洲高清免费视频| 在线观看亚洲视频啊啊啊啊| 精品88久久久久88久久久| 久久99精品国产.久久久久| 国产亚洲精品自拍| 中文字幕亚洲不卡| 欧美不卡三区| 久久人人超碰精品| 福利一区福利二区| 欧美精品国产精品| 麻豆视频观看网址久久| 久久激情视频| 亚洲国产精品一区二区久久| 亚洲国产精品毛片| 国产精品久久久久国产精品日日| jlzzjlzz国产精品久久| 69精品人人人人| 久久不见久久见免费视频1| 久久精品亚洲| 午夜欧美一区二区三区在线播放| 亚洲区第一页| 亚洲免费在线视频| 18成人免费观看视频| 最好看的中文字幕久久| 国产自产精品| 国产精品久久久久久久久免费丝袜 | 欧美性受极品xxxx喷水| 捆绑变态av一区二区三区| 色网站国产精品| 奇米在线7777在线精品| 在线精品视频一区二区| 美国十次了思思久久精品导航| 久久久久网站| 美女www一区二区| 9191成人精品久久| 粉嫩蜜臀av国产精品网站| 日韩精品中文字幕在线一区| 成人精品gif动图一区| www日韩大片| 欧美天堂亚洲电影院在线观看| 国产精品视频观看| 在线亚洲免费| 亚洲v精品v日韩v欧美v专区| 色视频欧美一区二区三区| 麻豆成人av在线| 日韩欧美国产一区在线观看| 95精品视频在线| 中文字幕一区二区三区不卡| 国产欧美日韩一区二区三区| 午夜精品福利在线| 欧美日韩1234| 97精品电影院| 亚洲免费在线电影| 色就色 综合激情| 国产精品综合av一区二区国产馆| 日韩欧美国产一区二区在线播放 | 亚洲三级视频在线观看| 欧美中文日韩| 成人性生交大片免费看中文| 欧美高清在线一区| 国产精品日本| 国产综合成人久久大片91| 久久亚洲二区三区| 国产精品一区在线播放| 国产麻豆欧美日韩一区| 国产欧美视频一区二区三区| 国产欧美日韩一区| 国产另类ts人妖一区二区| 欧美激情一区二区三区蜜桃视频| 一本色道88久久加勒比精品| 另类综合日韩欧美亚洲| 久久色中文字幕| 久久av一区二区三区| 国产成人日日夜夜| 中文字幕欧美一区| 欧美日韩在线不卡| 很黄很黄激情成人| 久久疯狂做爰流白浆xx| 欧美激情综合网| 欧美午夜在线观看| 色综合天天狠狠| 日本成人中文字幕| 国产精品久久久久久亚洲伦| 欧美在线你懂得| 国内精品久久国产| 国产一区二区精品久久99| 亚洲欧美日韩在线| 3d成人h动漫网站入口| 亚洲精品在线免费| av电影在线观看不卡| 日韩在线一二三区| 亚洲国产成人一区二区三区| 欧美性猛交一区二区三区精品| 国内外成人免费视频| 蜜桃91丨九色丨蝌蚪91桃色| 亚洲国产精品二十页| 91精品国产91久久综合桃花| 国产伦精品一区二区三区四区免费 | 欧美日韩精品欧美日韩精品一| 99亚洲精品| 91亚洲精品乱码久久久久久蜜桃| 视频一区二区三区在线| 国产精品福利一区| 欧美变态凌虐bdsm| 在线一区二区三区四区五区| 在线播放不卡| 91亚洲男人天堂| 国产精品影视网| 日韩av在线发布| 亚洲激情中文1区| 国产欧美日韩久久| 日韩欧美国产一区二区三区| 色94色欧美sute亚洲线路一ni| 国模 一区 二区 三区| 成人动漫视频在线| 国产原创一区二区| 日韩精品乱码av一区二区| 亚洲精品欧美激情| 亚洲老妇xxxxxx| 欧美国产一区二区| 精品国产三级a在线观看| 欧美视频一区二区三区在线观看| 亚洲一区三区在线观看| 很黄很黄激情成人| 国内精品久久久久久久97牛牛| 97久久精品人人做人人爽| 国产成人av一区二区三区在线观看| 日本欧美一区二区| 日韩中文字幕一区二区三区| 亚洲综合色噜噜狠狠| 亚洲激情网站免费观看| 亚洲男人的天堂在线观看| 国产精品久久久久久久久免费桃花 | 国产精品一区二区你懂的| 黑人巨大精品欧美一区| 看电视剧不卡顿的网站| 麻豆精品在线播放| 久久成人免费网| 激情综合色播五月| 国精产品一区一区三区mba视频| 激情欧美日韩一区二区| 国产美女一区二区三区| 国产麻豆成人精品| 国产盗摄精品一区二区三区在线 | 日本一区二区三区久久久久久久久不| 精品久久久久久久一区二区蜜臀| 日韩一区二区三区四区| 日韩欧美在线网站| 久久久久久久久久看片| 国产精品另类一区| 亚洲女子a中天字幕| 亚洲国产精品久久久久秋霞影院 | 亚洲精品一区二区三区蜜桃下载| 欧美xxxx在线观看| 国产亚洲短视频| 国产精品每日更新在线播放网址| 中文字幕在线观看不卡视频| 亚洲精品国产精品乱码不99| 亚洲制服丝袜在线| 蜜臀精品一区二区三区在线观看| 久久99九九99精品| 99视频一区二区| 亚洲高清123| 色婷婷激情综合| 日韩区在线观看| 国产精品久久久久久久久果冻传媒| 日韩毛片一二三区|