版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、PAGE PAGE 16 HYPERLINK / 網(wǎng)站調(diào)試數(shù)據(jù)庫(kù)轉(zhuǎn)換技術(shù)案例匯集Php mysql sql mssql access TOC o 1-3 h z u HYPERLINK l _Toc303576940 如何把 *.mdb 轉(zhuǎn)換成 mysql? PAGEREF _Toc303576940 h 1 HYPERLINK l _Toc303576941 一、Access-to-mysql pro PAGEREF _Toc303576941 h 2 HYPERLINK l _Toc303576942 二、關(guān)于數(shù)據(jù)導(dǎo)入mysql時(shí)的亂碼的解決方案 PAGEREF _Toc303576942
2、 h 3 HYPERLINK l _Toc303576943 把Access的數(shù)據(jù)導(dǎo)入MySQL的簡(jiǎn)單方案 PAGEREF _Toc303576943 h 5 HYPERLINK l _Toc303576944 Access轉(zhuǎn)換為 MS SQL 有什么要注意的地方 (代碼篇) PAGEREF _Toc303576944 h 6 HYPERLINK l _Toc303576945 ACCESS改為SQL需要注意哪幾個(gè)地方(概述) PAGEREF _Toc303576945 h 9 HYPERLINK l _Toc303576946 ACCESS轉(zhuǎn)MYSQL三種方法,不算是技巧? PAGEREF
3、_Toc303576946 h 10 HYPERLINK l _Toc303576947 mysql 基本命令 PAGEREF _Toc303576947 h 11如何把 *.mdb 轉(zhuǎn)換成 mysql?我前幾天剛做這件比較麻煩的事,現(xiàn)在我可以告訴你幾個(gè)可行的辦法但都不是一下子就能完成的。 1。我當(dāng)時(shí)用的是BCB,所以我利用他自帶的datapump,再安裝并配置了myodbc后,直接把.mdb中的表都導(dǎo)入mysql中. 其中的問(wèn)題是如果你碰到帶有mysql不支持的字段類型時(shí),該張表就導(dǎo)不過(guò)去了。例如:littletime,money等等 2。你可以把*.mdb的表結(jié)構(gòu)導(dǎo)出,可以利用sql se
4、rver(導(dǎo)出為.sql),再另存為.txt(里面就是數(shù)據(jù)表的結(jié)構(gòu))。再在mysql提示下打入 . 路徑+*.txt 他就會(huì)創(chuàng)建所有的表,前提是還要先create一個(gè)空的數(shù)據(jù)庫(kù).問(wèn)題在于*.sql導(dǎo)出的數(shù)據(jù)結(jié)構(gòu)是標(biāo)準(zhǔn)的sql語(yǔ)句,但是mysql不認(rèn)識(shí),所以你要稍微地去調(diào)整和修改一下生成的*.txt. 快速進(jìn)行Access數(shù)據(jù)庫(kù)轉(zhuǎn)成mysql數(shù)據(jù)庫(kù)及mysql導(dǎo)入中文數(shù)據(jù)亂碼問(wèn)題的解決方案一、Access-to-mysql pro Access-to-mysql pro是一個(gè)可以直接將Access文件導(dǎo)入mysql中的軟件,其基本用法參見(jiàn)了某人的某文如下:這個(gè)要用到Access-to-MySQL
5、Pro這個(gè)軟件。網(wǎng)上有下載,并且有破解版的。問(wèn)題是如果直接用它來(lái)把ACCESS文件導(dǎo)入MYSQL會(huì)出現(xiàn)亂碼。所以我試下以下方法,雖然麻煩點(diǎn),但是還可是可行。5.1用Access-to-MySQLPro來(lái)把數(shù)據(jù)庫(kù)導(dǎo)出為*.sql文件。A)運(yùn)行Access-to-MySQLPro的時(shí)候選ADVANCEMODE,下一步;B)選擇STOREintodumpfile,就是保存為*.sql文件,下一步;C)選擇目標(biāo)MYSQL的版本,選默認(rèn)值,下一步;D)這下要選MSACCESSUSER-LEVElLSECURITYFILE,這個(gè)文件一般在你的OFFICE安裝目錄下。我的是在G:ProgramFilesMi
6、crosoftOfficeOfficeSYSTEM.MDW,用戶名填A(yù)DMIN,下一步;E)選擇你要轉(zhuǎn)換的ACCESSMDB文件以及保存路徑,點(diǎn)下一步,就可以生成.sql文件了。我生成的是C:test.sql。5.2把剛才生成的文件轉(zhuǎn)成UTF-8格式。用記事本打開(kāi)這個(gè)文件,選另存為,編碼選UTF8,覆蓋保存就OK了。5.3在MYSQL導(dǎo)入該文件我不在phpMyAdmin導(dǎo)入文件是因?yàn)閜hpMyAdmin默認(rèn)只能導(dǎo)入17M的文件。懶得改相應(yīng)的設(shè)置,MYSQL命令行方便些。進(jìn)入DOS窗口,轉(zhuǎn)到MYSQL安裝目錄的BIN子目錄下。我這里是G:ProgramFilesxappxamppmysqlbin
7、.A)mysql-uroot-ppassword:這里輸入密碼B)CREATEDATABASEhewang;C)usehewang;E)sourcec:test.sql;有可能會(huì)出現(xiàn)錯(cuò)誤提示音,不管他,等它再次出現(xiàn)提示符的時(shí)候,導(dǎo)入成功。我用這種方法導(dǎo)入一個(gè)50M的文件沒(méi)有問(wèn)題,只是提示音響了十分鐘??梢栽趐hpMyAdmin下查看數(shù)據(jù)是否正確,如果沒(méi)有亂碼就OK了。二、關(guān)于數(shù)據(jù)導(dǎo)入mysql時(shí)的亂碼的解決方案當(dāng)然上文是基于php下的亂碼解決方案,我在MySQL Command Line Client下使用source c:test.sql時(shí)導(dǎo)入有中文字串的字段值的時(shí)候,從SQL Manage
8、r中查看記錄都是亂碼。我的解決方案如下:由Access-to-mysql生成的sql文件中有類似如下文本內(nèi)容:CREATETABLEuserinfo(idINTNOTNULLAUTO_INCREMENT,nameVARCHAR(50),pwd VARCHAR(20),PRIMARYKEY(id)TYPE=InnoDB;注意紅色的文本,修改成如下:CREATETABLEuserinfo(idINTNOTNULLAUTO_INCREMENT,nameVARCHAR(50),pwd VARCHAR(20),PRIMARYKEY(id)ENGINE=InnoDB DEFAULT CHARSET=gb2
9、312;接下來(lái),還要在文件中的LOCK TABLES userinfo WRITE;后面,INSERT INTO userinfo文本的前面增加如下一行,如下:LOCKTABLESuserinfoWRITE;SETNAMESgb2312;INSERTINTOuserinfoVALUES這樣修改這個(gè)文件以后,還要將它以ANSI編碼重新保存。這樣操作以后,在MySQL Command Line Client中使用source test.sql后導(dǎo)入mysql數(shù)據(jù)的字串都是正確的了。并且,所有文本相關(guān)的編碼也都是gb2312的編碼。 把Access的數(shù)據(jù)導(dǎo)入MySQL的簡(jiǎn)單方案我們大家都知道在建設(shè)網(wǎng)
10、站的實(shí)際操作過(guò)程中,對(duì)于一些數(shù)據(jù)的導(dǎo)入MySQL數(shù)據(jù)庫(kù)及導(dǎo)出經(jīng)常需要進(jìn)行處理。 在MySQL數(shù)據(jù)庫(kù)中,一般有兩種方法來(lái)處理數(shù)據(jù)的導(dǎo)出:1. 使用select * from table_name into outfile “file_name”;2. 使用MySQLdump實(shí)用程序下面我們來(lái)舉例說(shuō)明:假設(shè)我們的數(shù)據(jù)庫(kù)中有一個(gè)庫(kù)為samp_db,一個(gè)表為samp_table?,F(xiàn)在要把samp_table的數(shù)據(jù)導(dǎo)出。則我們可以利用以下方法來(lái)實(shí)現(xiàn):在MySQL提示符下打入select * from samp_table into outfile “file_name”;在系統(tǒng)命令提示符下打入MySQL
11、dump u root samp_db samp_table samp.sql(當(dāng)然MySQLdump有很多選項(xiàng).如 -d 表示只導(dǎo)出表結(jié)構(gòu);-t 表示只導(dǎo)入表數(shù)據(jù))如何來(lái)處理數(shù)據(jù)的導(dǎo)入:一般我們?cè)谙到y(tǒng)命令提示符下打入MySQLimport u root samp_db samp_table.txt(注意:這個(gè)TXT文件名必須以表的名字命名)。對(duì)于MySQLdump導(dǎo)出的數(shù)據(jù)我們還可以用MySQL u root samp_db c:test.txt 備份表格:(備份test數(shù)據(jù)庫(kù)下的mytable表格) mysqldump -u root -p test mytablec:test.txt 將
12、備份數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù):(導(dǎo)回test數(shù)據(jù)庫(kù)) mysql -u root -p test 3、創(chuàng)建臨時(shí)表:(建立臨時(shí)表zengchao) create temporary table zengchao(name varchar(10); 4、創(chuàng)建表是先判斷表是否存在 create table if not exists students(); 5、從已經(jīng)有的表中復(fù)制表的結(jié)構(gòu) create table table2 select * from table1 where 11; 6、復(fù)制表 create table table2 select * from table1; 7、對(duì)表重新命名 alt
13、er table table1 rename as table2; 8、修改列的類型 alter table table1 modify id int unsigned;/修改列id的類型為int unsigned alter table table1 change id sid int unsigned;/修改列id的名字為sid,而且把屬性修改為int unsigned 9、創(chuàng)建索引 alter table table1 add index ind_id (id); create index ind_id on table1 (id); create unique index ind_id
14、 on table1 (id);/建立唯一性索引 10、刪除索引 drop index idx_id on table1; alter table table1 drop index ind_id; 11、聯(lián)合字符或者多個(gè)列(將列id與:和列name和=連接) select concat(id,:,name,=) from students; 12、limit(選出10到20條) select * from students order by id limit 9,10; 13、MySQL不支持的功能 事務(wù),視圖,外鍵和引用完整性,存儲(chǔ)過(guò)程和觸發(fā)器 14、MySQL會(huì)使用索引的操作符號(hào) ,=,
15、=,between,in,不帶%或者_(dá)開(kāi)頭的like 15、使用索引的缺點(diǎn) 1)減慢增刪改數(shù)據(jù)的速度; 2)占用磁盤(pán)空間; 3)增加查詢優(yōu)化器的負(fù)擔(dān); 當(dāng)查詢優(yōu)化器生成執(zhí)行計(jì)劃時(shí),會(huì)考慮索引,太多的索引會(huì)給查詢優(yōu)化器增加工作量,導(dǎo)致無(wú)法選擇最優(yōu)的查詢方案; 16、分析索引效率 方法:在一般的SQL語(yǔ)句前加上explain; 分析結(jié)果的含義: 1)table:表名; 2)type:連接的類型,(ALL/Range/Ref)。其中ref是最理想的; 3)possible_keys:查詢可以利用的索引名; 4)key:實(shí)際使用的索引; 5)key_len:索引中被使用部分的長(zhǎng)度(字節(jié)); 6)ref
16、:顯示列名字或者const(不明白什么意思); 7)rows:顯示MySQL認(rèn)為在找到正確結(jié)果之前必須掃描的行數(shù); 8)extra:MySQL的建議; 17、使用較短的定長(zhǎng)列 1)盡可能使用較短的數(shù)據(jù)類型; 2)盡可能使用定長(zhǎng)數(shù)據(jù)類型; a)用char代替varchar,固定長(zhǎng)度的數(shù)據(jù)處理比變長(zhǎng)的快些; b)對(duì)于頻繁修改的表,磁盤(pán)容易形成碎片,從而影響數(shù)據(jù)庫(kù)的整體性能; c)萬(wàn)一出現(xiàn)數(shù)據(jù)表崩潰,使用固定長(zhǎng)度數(shù)據(jù)行的表更容易重新構(gòu)造。使用固定長(zhǎng)度的數(shù)據(jù)行,每個(gè)記錄的開(kāi)始位置都是固定記錄長(zhǎng)度的倍數(shù),可以很容易被檢測(cè)到,但是使用可變長(zhǎng)度的數(shù)據(jù)行就不一定了; d)對(duì)于MyISAM類型的數(shù)據(jù)表,雖然轉(zhuǎn)換
17、成固定長(zhǎng)度的數(shù)據(jù)列可以提高性能,但是占據(jù)的空間也大; 18、使用not null和enum 盡量將列定義為not null,這樣可使數(shù)據(jù)的出來(lái)更快,所需的空間更少,而且在查詢時(shí),MySQL不需要檢查是否存在特例,即null值,從而優(yōu)化查詢; 如果一列只含有有限數(shù)目的特定值,如性別,是否有效或者入學(xué)年份等,在這種情況下應(yīng)該考慮將其轉(zhuǎn)換為enum列的值,MySQL處理的更快,因?yàn)樗械膃num值在系統(tǒng)內(nèi)都是以標(biāo)識(shí)數(shù)值來(lái)表示的; 19、使用optimize table 對(duì)于經(jīng)常修改的表,容易產(chǎn)生碎片,使在查詢數(shù)據(jù)庫(kù)時(shí)必須讀取更多的磁盤(pán)塊,降低查詢性能。具有可變長(zhǎng)的表都存在磁盤(pán)碎片問(wèn)題,這個(gè)問(wèn)題對(duì)bl
18、ob數(shù)據(jù)類型更為突出,因?yàn)槠涑叽缱兓浅4蟆?梢酝ㄟ^(guò)使用optimize table來(lái)整理碎片,保證數(shù)據(jù)庫(kù)性能不下降,優(yōu)化那些受碎片影響的數(shù)據(jù)表。 optimize table可以用于MyISAM和BDB類型的數(shù)據(jù)表。實(shí)際上任何碎片整理方法都是用mysqldump來(lái)轉(zhuǎn)存數(shù)據(jù)表,然后使用轉(zhuǎn)存后的文件并重新建數(shù)據(jù)表; 20、使用procedure analyse() 可以使用procedure analyse()顯示最佳類型的建議,使用很簡(jiǎn)單,在select語(yǔ)句后面加上procedure analyse()就可以了;例如: select * from students procedure analyse(); select * from students procedure analyse(16,256); 第二條語(yǔ)句要求procedure analyse()不要建議含有多于16個(gè)值,或者含有多于256字節(jié)的enum類型,如果沒(méi)有限制,輸出可能會(huì)很長(zhǎng); 21、使用查詢緩存 1)查詢緩存的工作方式: 第一次執(zhí)行某條select語(yǔ)句時(shí),服務(wù)器記住該查詢的文本內(nèi)容和查詢結(jié)果,存儲(chǔ)在緩存中,下次碰到這個(gè)語(yǔ)句時(shí),直接從緩存中返回結(jié)果;當(dāng)更新數(shù)據(jù)表后,該數(shù)據(jù)表的任何緩存查詢都變成無(wú)效的,并且會(huì)被丟棄。 2)配置緩存參數(shù): 變量:query_cache _type,查詢緩存的操作模式。有
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度房地產(chǎn)企業(yè)勞動(dòng)合同(包含房屋租賃協(xié)議)3篇
- 保山職業(yè)學(xué)院《中學(xué)體育教學(xué)測(cè)量與評(píng)價(jià)》2023-2024學(xué)年第一學(xué)期期末試卷
- 保山職業(yè)學(xué)院《快題專題訓(xùn)練》2023-2024學(xué)年第一學(xué)期期末試卷
- 保山學(xué)院《高等代數(shù)2》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年電競(jìng)設(shè)備及賽事服務(wù)采購(gòu)合同
- 2025版五星級(jí)酒店家具選購(gòu)與安裝一體化服務(wù)合同3篇
- 保定電力職業(yè)技術(shù)學(xué)院《光纖通信與數(shù)字傳輸》2023-2024學(xué)年第一學(xué)期期末試卷
- 寶雞文理學(xué)院《現(xiàn)代導(dǎo)航系統(tǒng)理論》2023-2024學(xué)年第一學(xué)期期末試卷
- 寶雞三和職業(yè)學(xué)院《醫(yī)用放射源輻射安全與防護(hù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年度砍樹(shù)承包合同結(jié)合林業(yè)生態(tài)補(bǔ)償機(jī)制協(xié)議3篇
- 新入職員工年終工作總結(jié)課件
- 汽車吊籃使用專項(xiàng)施工方案
- 靜脈導(dǎo)管維護(hù)
- 普通邏輯學(xué)智慧樹(shù)知到期末考試答案章節(jié)答案2024年河海大學(xué)
- 帶你聽(tīng)懂中國(guó)傳統(tǒng)音樂(lè)智慧樹(shù)知到期末考試答案2024年
- 大學(xué)基礎(chǔ)寫(xiě)作--表達(dá)方式課件
- 300td高強(qiáng)瓦楞原紙廢紙制漿工段工藝設(shè)計(jì)
- 螺桿式風(fēng)冷冷水(熱泵)機(jī)組電路圖
- MSD(濕敏器件防護(hù))控制技術(shù)規(guī)范
- 《錄音技術(shù)與藝術(shù)》課程教學(xué)大綱(新版)(共11頁(yè))
- 外貿(mào)參展攻略
評(píng)論
0/150
提交評(píng)論