• <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

            數據庫的表和字段的注釋。表的結構

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

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

            但是這又涉及一個問題:各種數據庫保存注釋(備注)的方法不一樣,雖然現在只用MS Sql server,但難保以后不會用Oracle。要不是大家都各搞一套,巴別塔也許早就建成了。
            ?
            SQL server下的方法(摘自 SQL Server下生成數據庫框架):
            SQL Server下生成數據庫框架。
            經過反復學習和測試,最后發現自定義的視圖才能簡單地勝任所需要的工作,否則把事情會變得很復雜。
            視圖代碼如下
            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

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

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

            ORACLE下的方法(摘自Oracle數據字典的介紹與應用實例):
            ORACLE自己搞了一套數據字典創建表的SQL語句如下
            --" 創建數據表
            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 '備注';
            -- 創建約束關系 主鍵 外鍵 其他
              alter table TABLE_TEST add constraint TB_TEST_P_NAME primary key (NAME);
              
            數據表創建完畢,執行下列SQL語句:
              select
              A.column_name 字段名,A.data_type 數據類型,A.data_length 長度,A.data_precision 整數位,
              A.Data_Scale 小數位,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'
              
            我們可以得出以下結果:
            字段名 數據類型 長度 整數位 小數位 允許空值 缺省值 備注
            Name varchar2 40 ? ? N <long> 姓名
            Sex varchar2 1 ? ? N <long> 性別
            ........


            ?

            學習數據庫的一些資料:

            存儲過程的好處:1編譯2封裝3重復使用4安全性5減少網絡流量

            JDBC讀取字段需要按順序的原因?:SQL數據庫在構造虛擬表的時候就是以一種先進先出的原則,把所有的數據排列在一個內存段之中,通過順序的讀取,將數據逐一的讀取,而如果跳過某個具體的字段獲取下一個字段的信息,系統就會將原來的那個字段的信息丟失,以釋放內存,這是出于系統構造的簡單性和系統的內存最低化的要求,所以這樣也保證了有限的內存資源得到最充分的發揮。?

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

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

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

            久久无码AV一区二区三区| 久久综合九色综合精品| 伊人久久大香线蕉AV一区二区| 欧美久久亚洲精品| 久久99国产乱子伦精品免费| 色成年激情久久综合| 亚洲国产天堂久久综合| 精品永久久福利一区二区| 精品国产综合区久久久久久 | 无码人妻久久一区二区三区蜜桃 | 亚洲va国产va天堂va久久| 久久精品国产亚洲AV高清热| 久久久精品日本一区二区三区| 久久精品日日躁夜夜躁欧美| 国内精品久久久久久中文字幕| 精品国产99久久久久久麻豆| 久久电影网| 四虎国产精品免费久久5151| 久久亚洲私人国产精品vA| 久久无码一区二区三区少妇| 97久久综合精品久久久综合| 国产成人精品久久| 日韩欧美亚洲综合久久 | 亚洲精品乱码久久久久久中文字幕| 久久久亚洲精品蜜桃臀| 7国产欧美日韩综合天堂中文久久久久| 99久久做夜夜爱天天做精品| 久久人人爽人人爽人人片AV麻豆 | 国产亚洲成人久久| 精品久久久久久国产免费了| 久久青青草原综合伊人| 国产美女久久久| 日本免费一区二区久久人人澡 | 久久人人爽人人爽人人片AV东京热 | 中文字幕亚洲综合久久2| 麻豆AV一区二区三区久久| 国产A三级久久精品| 中文精品久久久久人妻不卡| 久久久久久精品久久久久| 精品国产青草久久久久福利| 人妻精品久久久久中文字幕一冢本|