數據庫對于文本和備注類型的數據類型定義()都是為130,無法直接區分,找了N多網頁,包括MSDN都沒有描述有關的說明備注是哪種數據類型,還是自己分析一下:
為64位(8字節)的十六進制的值備注是哪種數據類型,組合了數據類型和必填字段等信息
其中最后2個字節有效,最后一個字節一直為0x0A,有變化的是最后第二個字節,即:
對于文本類型的為0x00;備注類型為0x80;
對于非必填字段為0x40;必填字段為0x60
組合后:
文本必填: 0x6A
文本非必填:0x4A
備注必填: 0xEA
備注非必填:0xCA
最后可以得到右移7位后可以區分文本類型和備注類型
dt = .(
.,
new [] {null, null, "表名稱", null});
[] drs = dt.("='字段名稱'");
if(drs. > 0 && .(drs[0][""]) == 130) {
//文本類型
if ( (.(drs[0][""]) >> 7) == 1){
//=1為備注字段
}else{
//=0為文本字段
}
}