マスタを持たないコードは数字で扱わない方がいい。

ような気がする。
enumで管理しようとすると列挙できないから。
ただし、それをマスタで管理しよう、serialなサロゲートキーを使おう、という変更には耐えられない。dbでは数字で管理、javaでは"code_"なりの接頭語をつけて管理する…のも手だけど、暗黙の仕様が増えるような気がするし…。
それとも、enum.getCode()とかでやりとりするか。そうだとデコードにenum.valueOf()が使えないからメンドクサイ。ついでにいうと、enum内のメソッドの継承って出来ないのがかなりつらい。古典的には外部ライブラリ化で回避できなくはないが…。