在创建表的时候,如果你有某个字段设置成值唯一,一般来说是设置字段为auto_increment的类型,这个取类
型为主键。这样还可以继续根据需要设置其他字段类型为唯一。
这里要说的是那个设置成auto_increment类型的字段,假设名称为ID。
1)当要针对某条记录进行操作时,设置where 时,这是只需要获得ID值,就可以进行操作,如
where id = '***',这样就可以省去传递很多条件参数,也不用担心修改或者删除会造成大片的数据错误。
2)当要进行分页检索时,由于MSSQL不支持limit语句。如果要构造类似的语法,需要使用TOP句型,如
在MYSQL可以使用select * from table where 1<2 limit 10,20,在MSSQL则需转换如下:
select top 20 * from table where ID not in (select top 10 ID from table)
如果ID不是唯一,则得到的结果将会与预期不一致。当然在MSSQL可以采用其他方法实现分页。但系统如果是
想要支持多资料库,则个人认为这样的方法将节省判断及SQL语句。
3)当你新增的时候还可以方便的通过函数去获得上次新增的记录ID,以进行后续的操作。
mysql_insert_id --mysql
select @@IDENTITY --mssql