varchar是標准sql里面的。 varchar2是oracle提供的獨有的數據類型。
varchar對於漢字占兩個字節,對於數字,英文字符是一個字節,占的內存小,varchar2一般情況下把所有字符都占兩字節處理。具體要看數據庫使用的字符集,比如GBK,漢字就會占兩個字節,英文1個,如果是UTF-8,漢字一般占3個字節,英文還是1個。
varchar對空串不處理,varchar2將空串當做null來處理。
varchar存放固定長度的字符串,最大長度是2000,varchar2是存放可變長度的字符串,最大長度是4000.
如果是要更換不同的數據庫,例如mysql,那么就用varchar,如果就用oracle,那么用varchar2比較好一點。