一、SQL--structured query language(结构化查询语句)
*主键--PRIMARY KEY
1.主键非空,也就是说,被设定为主键的列在插入数据的时候就不能为空,如果为空SQL就会报错。
2.主键唯一,也就是说,一个表通过 主键 可以唯一确定 一条记录。
*主键选择原则:
1.主键一般都是挑选能够 唯一 表示一条记录的 字段 来做,比如,现在有一个“学生表”里面有“学生编号”、“学生姓名”、“学生年龄”等。
根据原则肯定要以“学生编号”为主键。
2.还有一个原则就是 不经常被修改 的 字段 也可以做主键。“学生编号”在对表操作的时候肯定不会被修改所以也比较符合。
主键没有什么随便不随便设,一个表最好有一个主键,因为这是个好习惯,而且设置主键,方便对数据进行增删改查。
**小结:
主键有三要素:1.唯一 2.非空 3.不可修改
一般,我们在设置主键时,都会设置其为自增。
-------------------------------------------------------------------------------------------------------------------------------------
二、在JAVA中,通过比较 对象引用--对象内存地址 是否相等,或者通过比较 对象的值 是否相等,来判断是否是同一个对象。
1. == ,比较 对象的内存地址值 是否相等。
2.equal() ,比较 对象值 是否相等,我们可以通过重写此方法,来达到目的。
-------------------------------------------------------------------------------------------------------------------------------------
三、Hibernate为了解决二者之间的不同,使用对象标识符(OID)来标识对象的唯一性。OID是关系数据库中,主键在Java对象模型中的等价物。在运行时,hibernate根据OID来维持Java对象和数据库表中的对应关系。
-------------------------------------------------------------------------------------------------------------------------------------
对象标识(Object Identifier)--OID
*什么是OID?
*OID的唯一性
OID(Object ID)应当没有任何业务相关含义