This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I am developing a web application with Spring, Hibernate and MySql.
For database tables, I am using the auto increment number with int datatype. However, I want to use the varchar datatype as autoincrement.
for employee table
for dept table
As shown in above example I also want to specify the range of the autoincrement. employee table range 1001-2000..like that.
Please help to provide some advice on how to achieve this for Mysql in Hibernate without much performance hit.
Well, since this is MySQL you don't have seqences availabkle to you. And even if you did, you would need a function too. Sequences don't support char data types, they are only ever intended to work with numeric values.
STepping back a moment, from a data modelling point of view why are you using character data? What does EMP or DPT tell you, other than a (redundant) short hand clue to the entity your key identifies? And do the incremented value have to be sequential?
Since all the tables id starts with 1,2,3... and I have complex relationship across the tables identifying the PK-FK combination is very confusing. Instead of all tha tables primary key starts with 1,2,3.... I can have a more meaningful id.
do the incremented value have to be sequential?
Not necessarliy, but how to configure it in hibernate for id.