NUMBER类型,占用几个字节?
在存储时,占用字节数应该是根据数据的长度动态变化的,可以使用DUMP函数来查看NUMBER类型数据的内部存储格式。貌似除NULL外,最短1字节,最长21字节,你测试下看看。
DECLARE V_NUM NUMBER; BEGIN V_NUM := 0; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); V_NUM := 3; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); V_NUM := 3.14; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); -- 1 2 3 4 --1234567890123456789012345678901234567890 V_NUM := 9876543210987654321098765432109876543210; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); V_NUM := 987654321098765432109.8765432109876543219; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); END;
在存储时,占用字节数应该是根据数据的长度动态变化的,可以使用DUMP函数来查看NUMBER类型数据的内部存储格式。貌似除NULL外,最短1字节,最长21字节,你测试下看看。
DECLARE V_NUM NUMBER; BEGIN V_NUM := 0; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); V_NUM := 3; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); V_NUM := 3.14; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); -- 1 2 3 4 --1234567890123456789012345678901234567890 V_NUM := 9876543210987654321098765432109876543210; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); V_NUM := 987654321098765432109.8765432109876543219; PRINT(DUMP(V_NUM,16)||' ---'||V_NUM); END;