您好!歡迎來到潛江全景信息技術有限公司官方網站!

微信寶平臺 | 企業郵箱 |

潛江建網站做網頁網絡公司潛江全景信息技術有限公司營銷型網站+手機網站+微信官網+網絡營銷推廣

181 0729 8398
收藏分享
當前位置:首頁 > 資訊中心 > 收藏分享

Access數據庫的文本、備注數據類型的COLUMN_FLAGS說明

2020/4/9 15:48:44 人評論 次瀏覽 分類:收藏分享

Access數據庫對于文本和備注類型的數據類型定義(DATA_TYPE)都是為130,無法直接區分,找了N多網頁,包括MSDN都沒有描述有關COLUMN_FLAGS的說明,還是自己分析一下:

    COLUMN_FLAGS為64位(8字節)的十六進制的值,組合了數據類型和必填字段等信息

其中最后2個字節有效,最后一個字節一直為0x0A,有變化的是最后第二個字節,即:
    對于文本類型的為0x00;備注類型為0x80;
    對于非必填字段為0x40;必填字段為0x60

組合后:
   文本必填:  0x6A
   文本非必填:0x4A
   備注必填:  0xEA
   備注非必填:0xCA
   
最后可以得到COLUMN_FLAGS右移7位后可以區分文本類型和備注類型


DataTable dt = m_OLEDBCon.GetOleDbSchemaTable(
    OleDbSchemaGuid.Columns,
    new object[] {null, null, "表名稱", null});

DataRow[] drs = dt.Select("COLUMN_NAME='字段名稱'");
if(drs.Length > 0 && Convert.ToInt32(drs[0]["DATA_TYPE"]) == 130) {
    //文本類型
    if ( (Convert.ToInt64(drs[0]["COLUMN_FLAGS"]) >> 7) == 1){
        //=1為備注字段       
    }else{
        //=0為文本字段
    }
}

立足湖北,面向全國承接各類“企業網站建設”,聯系電話:18107298398(微信同號),歡迎來電咨詢!

隨機資訊
隨機圖文
斗牛棋牌app 老时时彩第 急速赛车单机游戏下载 极速时时彩输了100万 喜乐彩历史开奖号码 福彩3d乐彩网 3d试机号北京一语定胆 河南快三开奖结果走势图百度乐彩 北京快3大小走势图表 老11选5开奖结果走势图 山东11选5复式投注图 重庆快乐10分计划大全 香港一码中特网 重庆欢乐生肖是哪家公司的 北京快中彩奖池 俄罗斯五分彩数据金融的人该不该相信他 3d试机号今天晚上金码号十期