• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            brent's hut

            數(shù)據(jù)庫(kù)的表和字段的注釋。表的結(jié)構(gòu)

            這里的表結(jié)構(gòu)指的表的基本信息:表名,表的注釋(備注),字段名,字段類型,長(zhǎng)度,是否允許空,缺省值,字段注釋(備注)。
            ?
            主要的是注釋..你的表名叫l(wèi)cxxb,字段名叫l(wèi)cmc,智商300的用戶也看不懂你這是拼音,意思是"流程信息表"和"流程名稱"。大家的思路都不一樣。

            我要做到的就是讓用戶看到的是"流程信息表"和"流程名稱"而實(shí)際操作的是lcxxb和lcmc。
            你自己建個(gè)表XXX來(lái)保存lcxxb,lcmc和"流程信息表","流程名稱"的對(duì)映吧。是相當(dāng)麻煩的事情,
            1,造成數(shù)據(jù)冗余,人家數(shù)據(jù)庫(kù)基本上都能讓你給表和字段寫注釋,你還自己搞一套..
            2,每次修改表都要去修改一下這張表,刪除的表和字段要?jiǎng)h除,更新的表和字段要更新,新建的表和字段要新建,累..
            3,每次創(chuàng)建數(shù)據(jù)庫(kù)都要獨(dú)立的再填寫表XXX的內(nèi)容。每次修改了數(shù)據(jù)庫(kù)設(shè)計(jì),創(chuàng)建數(shù)據(jù)庫(kù)的程序也要跟著修改。
            所以俺還是老老實(shí)實(shí)用數(shù)據(jù)庫(kù)提供的注釋或備注或數(shù)據(jù)字典功能吧。

            但是這又涉及一個(gè)問(wèn)題:各種數(shù)據(jù)庫(kù)保存注釋(備注)的方法不一樣,雖然現(xiàn)在只用MS Sql server,但難保以后不會(huì)用Oracle。要不是大家都各搞一套,巴別塔也許早就建成了。
            ?
            SQL server下的方法(摘自 SQL Server下生成數(shù)據(jù)庫(kù)框架):
            SQL Server下生成數(shù)據(jù)庫(kù)框架。
            經(jīng)過(guò)反復(fù)學(xué)習(xí)和測(cè)試,最后發(fā)現(xiàn)自定義的視圖才能簡(jiǎn)單地勝任所需要的工作,否則把事情會(huì)變得很復(fù)雜。
            視圖代碼如下
            CREATE VIEW dbo.Data_Frame
            AS
            SELECT dbo.syscolumns.name AS Name, dbo.systypes.name AS Type,
            ????? dbo.syscolumns.length AS Width, dbo.syscolumns.isnullable AS IsNull,
            ????? dbo.sysproperties.[value], dbo.sysobjects.name AS Table_Name
            FROM dbo.sysobjects INNER JOIN
            ????? dbo.syscolumns ON dbo.sysobjects.id = dbo.syscolumns.id INNER JOIN
            ????? dbo.sysproperties ON dbo.syscolumns.colid = dbo.sysproperties.smallid AND
            ????? dbo.syscolumns.id = dbo.sysproperties.id INNER JOIN
            ????? dbo.systypes ON dbo.syscolumns.xtype = dbo.systypes.xtype AND
            ????? dbo.syscolumns.xusertype = dbo.systypes.xusertype

            最后輸出的是:
            列名
            系統(tǒng)類型
            限制長(zhǎng)度
            是否允許為空
            備注
            所在表
            可以進(jìn)一步根據(jù)需要增加/刪除自己希望的部分。
            調(diào)用:
            Select * From [自定義的視圖名稱] Where Table_Name='[希望檢索的表名]'

            或者 取得一個(gè)表中所有的字段列表及字段描述的方法:
            字段名列表:
            select Name from syscolumns where id=object_id('custmoerinfo')
            字段描述:
            select * from ::fn_listextendedproperty(NULL, 'user', 'dbo', 'table', 'custmoerinfo','column', default)

            ORACLE下的方法(摘自Oracle數(shù)據(jù)字典的介紹與應(yīng)用實(shí)例):
            ORACLE自己搞了一套數(shù)據(jù)字典創(chuàng)建表的SQL語(yǔ)句如下
            --" 創(chuàng)建數(shù)據(jù)表
            create table TABLE_TEST
            (
              NAME varchar2(40) not null,
              SEX varchar2(1) default 'Y' not null,
              BIRTHDAY date not null,
              HEIGHT number(3,2),
              WEIGHT number(3,2),
              MEMO blob
            );
            -- 給列添加備注
              comment on column TABLE_TEST.NAME is '姓名';
              comment on column TABLE_TEST.SEX is '性別';
              comment on column TABLE_TEST.BIRTHDAY is '生日';
              comment on column TABLE_TEST.HEIGHT is '身高';
              comment on column TABLE_TEST.WEIGHT is '體重';
              comment on column TABLE_TEST.MEMO is '備注';
            -- 創(chuàng)建約束關(guān)系 主鍵 外鍵 其他
              alter table TABLE_TEST add constraint TB_TEST_P_NAME primary key (NAME);
              
            數(shù)據(jù)表創(chuàng)建完畢,執(zhí)行下列SQL語(yǔ)句:
              select
              A.column_name 字段名,A.data_type 數(shù)據(jù)類型,A.data_length 長(zhǎng)度,A.data_precision 整數(shù)位,
              A.Data_Scale 小數(shù)位,A.nullable 允許空值,A.Data_default 缺省值,B.comments 備注
              from
              user_tab_columns A,user_col_comments B
              where
              A.Table_Name = B.Table_Name
              and A.Column_Name = B.Column_Name
              and A.Table_Name = 'TABLE_TEST'
              
            我們可以得出以下結(jié)果:
            字段名 數(shù)據(jù)類型 長(zhǎng)度 整數(shù)位 小數(shù)位 允許空值 缺省值 備注
            Name varchar2 40 ? ? N <long> 姓名
            Sex varchar2 1 ? ? N <long> 性別
            ........


            ?

            學(xué)習(xí)數(shù)據(jù)庫(kù)的一些資料:

            存儲(chǔ)過(guò)程的好處:1編譯2封裝3重復(fù)使用4安全性5減少網(wǎng)絡(luò)流量

            JDBC讀取字段需要按順序的原因?:SQL數(shù)據(jù)庫(kù)在構(gòu)造虛擬表的時(shí)候就是以一種先進(jìn)先出的原則,把所有的數(shù)據(jù)排列在一個(gè)內(nèi)存段之中,通過(guò)順序的讀取,將數(shù)據(jù)逐一的讀取,而如果跳過(guò)某個(gè)具體的字段獲取下一個(gè)字段的信息,系統(tǒng)就會(huì)將原來(lái)的那個(gè)字段的信息丟失,以釋放內(nèi)存,這是出于系統(tǒng)構(gòu)造的簡(jiǎn)單性和系統(tǒng)的內(nèi)存最低化的要求,所以這樣也保證了有限的內(nèi)存資源得到最充分的發(fā)揮。?

            在SQL Server中保存和輸出圖片http://www.pcdog.com/p/html/2004124/41220041381_1.htm

            很好的一個(gè)電子書下載地址http://www.ibook8.com/book/shuju.htm

            posted on 2005-12-08 12:03 brent 閱讀(1158) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Database

            欧美一区二区精品久久| 久久e热在这里只有国产中文精品99 | 久久精品国产免费一区| 久久r热这里有精品视频| 久久激情五月丁香伊人| 久久婷婷色综合一区二区| 2021精品国产综合久久| 久久天天躁狠狠躁夜夜不卡| 久久综合九色综合网站| 久久久久久a亚洲欧洲aⅴ| 久久久久久国产a免费观看黄色大片| 亚洲国产日韩欧美综合久久| 国产亚洲精品久久久久秋霞| 国产无套内射久久久国产| 精品国产乱码久久久久久呢| 爱做久久久久久| 精品久久久久久久久午夜福利| 久久久WWW成人免费毛片| 久久福利青草精品资源站| 精品伊人久久大线蕉色首页| 久久久久黑人强伦姧人妻| 久久精品国产99国产精偷| 亚洲AV无码久久| 狠狠色婷婷久久一区二区| 久久免费观看视频| 国产亚洲美女精品久久久| 久久精品夜夜夜夜夜久久| 亚洲精品tv久久久久久久久 | 狠狠色综合网站久久久久久久高清 | 亚洲综合久久夜AV | 久久国产成人午夜AV影院| 精品久久久久久综合日本| 国内精品久久人妻互换| 亚洲国产欧美国产综合久久| 欧美日韩精品久久久久| 久久人人爽人人爽人人片av麻烦 | 色婷婷久久久SWAG精品| 久久久久久国产精品免费免费 | 四虎国产精品免费久久5151| 97热久久免费频精品99| 嫩草影院久久国产精品|