PostgreSQL/Oracle Table
ͨ³£ÎÒ們ÔÚ½¨Á¢ PostgreSQL/Oracle 資ÁÏ庫µÄ時ºò, Èç¹ûҪʹÓà MySQL/MS-SQL identity À×ͬµÄ¹¦ÄÜ, ¾ÍÊÇÒª採Óà Sequence 來½¨Á¢, ¶ø為ÁËÿһ個 Table ¶¼ÓÐ獨Á¢µÄÐò號產ÉúÆ÷, ÎÒ們會½¨Á¢個別µÄ sequence.
ÀýÈç (PostgreSQL sample):
CREATE SEQUENCE "student_seq" start 1 increment 1 maxvalue 2147483647 minvalue 1 cache 1;
create table student (
id bigint PRIMARY KEY DEFAULT NEXTVAL('student_seq'),
name character varying(50),
studentno character varying(50)
)
當ÎÒ們ʹÓûù±¾µÄ SQL command ¾ÍÊÇ
Insert into student ( name, studentno ) values ( 'jini', '890099' )
進ÐÐ Insert µÄ動×÷, Ëû×ÔÈ»會幫ÎÒÈ¡µÃ nextval of student_seq 進ÐÐ Insert.
ÄÇ麼, ÔÚ Hibernate annotation 標準µÄ×÷·¨, ¾ÍÊÇ
@Entity
@SequenceGeneratorr(name = "TheSEQ", allocationSize = 1, initialValue = 0, sequenceName = "student_seq")
public class Student implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE
, generator = "TheSEQ")
private Long id;
// other attributes, getters and setters
}
這樣, ÎÒÿһ個 @Id ¶¼µÃ»¨時間寫Ö¸¶¨µÄ sequence name,
雖È»沒ÓÐʲ麼²»ºÃ, µ«ÊÇÎÒ們¿ÉÒÔÀûÓà [tablename]_seq µÄÔ則¶¨義 seq, ¾Í應該¿ÉÒÔ͸過 Dialect 來決¶¨ÎÒµÄ IdGenerator µÄ·½Ê½
ËùÒÔÎÒÏ£Íûδ來µÄ³Ìʽ碼Ö»ÓÐÒÔÏÂËùÁÐ, ÀûÓà AUTO ¶ø·Ç SEQUENCE generated type.
@Entity
public class Student implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private
Ïà¹ØÎĵµ£º
ÊÇÏëÉú³ÉGUIDÂð£¿
SQL> select sys_guid() from dual ;
SYS_GUID()
--------------------------------
F18031C69D8345DEB305D4B2E796A282
Äã¿ÉÒ԰ѱíµÄÖ÷¼ü×ֶεÄȱʡֵÉèΪsys_guid()
insert into luxian_info (id) values(sys_guid()); ......
¹«Ë¾Òѽ¨Á¢µÄ»ò´ý½¨Á¢µÄÍøÕ¾£¬È磺ÖÐÎÄÕ¾£¨CHINA£©£¬¹ú¼ÊÕ¾£¨ALIBABA£©£¬»ªÉÌÕ¾£¨CHINESE£©µÈ¡£
OLPS
Online process system£¬ÔÚÏß´¦Àíϵͳ£¬¼´ÎÒÃǵĻáÔ±¿ÉÒÔä¯ÀÀµÄÍøÕ¾ËùÁ¬½ÓµÄÊý¾Ý¿â£¬Ò²ÊÇÎÒÃÇËù˵µÄǰ̨¡£
BOPS
Back Office process system£¬ºǫ́´¦Àíϵͳ£¬¼´ÎÒÃǵÄÍøÕ¾µÄ·¢²¼ÏµÍ³¡£
BZO
Business Object(?)£¬¹«Ë ......
µÚÒ»¸öÀࣺ
/**
*
* ´æ·ÅoracleÊý¾Ý¿âµÄÁ´½ÓÐÅÏ¢¡£
*
* @author ZhongHuiQiang
*
*/
public interface IOracleDAOInfor {
String DB_SERVER_HOSET = "localhost";
String DB_SERVER_NAME = "ppoo";
String DB_USER_NAME = "system";
String DB ......
²éѯʱ¿ÉÒÔÖ¸¶¨Ê¹ÓÃË÷ÒýµÄд·¨¡£
SELECT /*+ index(TB_ALIAS IX_G_COST3) */
TB_ALIAS.*
from g_Cost TB_ALIAS
WHERE Item_Two = 0
AND Flight_Date >= To_Date('20061201', 'YYYYMMDD')
AND Flight_D ......
declare
STR VARCHAR2(400);
begin
-- ÖØ½¨ORACLEË÷Òý
FOR TMP_IDX IN (SELECT TABLESPACE_NAME, OWNER, TABLE_NAME, INDEX_NAME
&nb ......