zyskm用夢想丈量人生,用奔跑丈量激情

          開發(fā)過程注意事項(數(shù)據(jù)庫方面)

          在開發(fā)過程中數(shù)據(jù)庫的操作和使用要有一定規(guī)范,不然會引起混亂。
          下邊是我們開發(fā)中具體例子,因為涉及公司在用項目詳細(xì)代碼就不列出來了,整個思路可供參考。

          1.初始化腳本
          各子系統(tǒng)建立自己的數(shù)據(jù)庫初始化腳本,格式可參照附件產(chǎn)品管理初始化腳本sql.rar(需要解壓到c:/sql才能在命令行執(zhí)行,見init.sql說明)
          包括兩部分內(nèi)容:1.建表語句(ddl);2.基礎(chǔ)數(shù)據(jù)初始化(data)
          建表語句由數(shù)據(jù)庫設(shè)計文檔(PowerDesigner)導(dǎo)出,基礎(chǔ)數(shù)據(jù)由excel文件導(dǎo)出(sql.rar提供示例,開發(fā)框架提供工具支持DbUtilTest.testExcel2Sql ())
          作用:
          1.數(shù)據(jù)庫結(jié)構(gòu)和基礎(chǔ)數(shù)據(jù)文檔化
          2.便于快速搭建開發(fā)測試環(huán)境,新建一套環(huán)境時不用拷貝原數(shù)據(jù)庫而是執(zhí)行腳本
          3.便于獨立開發(fā)測試,有一個干凈的數(shù)據(jù),避免開發(fā)測試依賴歷史數(shù)據(jù)和調(diào)試過程中互相影響
          2.數(shù)據(jù)庫結(jié)構(gòu)比對
          在部署多套數(shù)據(jù)庫時,懷疑表結(jié)構(gòu)不一致,可使用DbUtilTest.testCompareDataBase ()進(jìn)行檢查。
          執(zhí)行后會在子系統(tǒng)根目錄生成dbcompare.html 文件,參加附件。
          說明:紅色表示兩個表結(jié)構(gòu)不一致,綠色表示多出一表,黑色表示一致
           
          3.數(shù)據(jù)庫字符集(UTF-8)
          create database dbname CHARACTER SET utf8 COLLATE utf8_bin
          不單獨對表和字段設(shè)置字符集,整個庫統(tǒng)一使用utf-8
          4.表名字段名
          建庫腳本中表名和字段名不區(qū)分大小寫
          5.數(shù)據(jù)庫引擎(InnoDb)
          目前主要使用的兩種引擎MyIsam,InnoDb。MyIsam查詢較快,不支持事務(wù)。InnoDb支持事務(wù)。
          在建表sql指明引擎。
          create table ***
          (
             id bigint(11) not null auto_increment,
          .........
             primary key (id)
          )
          type = innodb;
          powerdesiner按如下方式設(shè)置:

          posted on 2011-10-24 16:24 zyskm 閱讀(214) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 天全县| 水富县| 交口县| 四平市| 桐柏县| 益阳市| 汨罗市| 广汉市| 武宣县| 浦县| 石家庄市| 扶余县| 大方县| 芦溪县| 察哈| 望谟县| 潞城市| 扶绥县| 峨山| 蒙阴县| 类乌齐县| 孙吴县| 会同县| 昭苏县| 浑源县| 乡宁县| 金乡县| 凤凰县| 孟州市| 彭山县| 咸宁市| 綦江县| 武隆县| 吉水县| 佛山市| 新绛县| 修文县| 绥棱县| 会理县| 延寿县| 长治县|