1、建立主键应当说是必要的。一个表明你的逻辑,再者主键都会建立索引(不管是在建立表的时候建立索引还是建立表以后),利于提高数据访问速度
2、约束是为了保证数据一致性。当然如果你的程序控制得好也是可以的