char是否占用数据库中的1个字节?

5Yr*_*DBA 6 database database-design

char是否占用数据库中的1个字节?

编辑:如果我将列定义为varchar(1),它会为我保留1或2个字节吗?

Vid*_*nes 5

无论值是什么,Char(k) 都占用 k 字节,varchar(k) n+1 字节,其中 n = 值中的字符数,但最多为 k+1 字节

Value       CHAR(4)    Storage Required     VARCHAR(4)      Storage Required
''          '    '     4 bytes              ''              1 byte
'ab'        'ab  '     4 bytes              'ab'            3 bytes
'abcd'      'abcd'     4 bytes              'abcd'          5 bytes
'abcdefgh'  'abcd'     4 bytes              'abcd'          5 bytes
Run Code Online (Sandbox Code Playgroud)

http://dev.mysql.com/doc/refman/5.1/en/char.html