从制造到创造
软件工程师成长之路
posts - 234,  comments - 64,  trackbacks - 0
1、最简单的:

CREATE TABLE t1(
   id 
int not null,
   name 
char(20)
);

2、带主键的:

a:
CREATE TABLE t1(
   id 
int not null primary key,
   name 
char(20)
);

b:复合主键
CREATE TABLE t1(
   id 
int not null,
   name char
(20),
   primary key (id,name)
);

3、带默认值的:

CREATE TABLE t1(
   id 
int not null default 0 primary key,
   name char
(20) default '1'
);

转贴的:
CREATE TABLE PLAYERS
       (PLAYERNO      
INTEGER NOT NULL PRIMARY KEY,
        NAME          
CHAR(15NOT NULL,
        INITIALS      
CHAR(3NOT NULL,
        BIRTH_DATE    DATE,
        SEX           
CHAR(1NOT NULL
                     
CHECK(SEX IN ('M','F')),
        JOINED        
SMALLINT NOT NULL
                     
CHECK(JOINED > 1969) ,
        STREET        
CHAR(30NOT NULL,
        HOUSENO       
CHAR(4),
        POSTCODE      
CHAR(6CHECK(POSTCODE LIKE '______'),
        TOWN          
CHAR(10NOT NULL,
        PHONENO       
CHAR(13),
        LEAGUENO      
CHAR(4))
;
CREATE TABLE TEAMS
       (TEAMNO        
INTEGER NOT NULL PRIMARY KEY,
        PLAYERNO      
INTEGER NOT NULL,
        DIVISION      
CHAR(6)   NOT NULL
                     
CHECK(DIVISION IN ('first','second')),
        
FOREIGN KEY   (PLAYERNO) REFERENCES PLAYERS (PLAYERNO))
;
CREATE TABLE MATCHES
       (MATCHNO       
INTEGER NOT NULL PRIMARY KEY,
        TEAMNO        
INTEGER NOT NULL,
        PLAYERNO      
INTEGER NOT NULL,
        WON           
SMALLINT NOT NULL
                     
CHECK(WON BETWEEN 0 AND 3),
        LOST          
SMALLINT NOT NULL
                     
CHECK(LOST BETWEEN 0 AND 3),
        
FOREIGN KEY (TEAMNO) REFERENCES TEAMS (TEAMNO),
        
FOREIGN KEY (PLAYERNO) REFERENCES PLAYERS (PLAYERNO))
;
CREATE TABLE PENALTIES
       (PAYMENTNO     
INTEGER NOT NULL PRIMARY KEY,
        PLAYERNO      
INTEGER NOT NULL,
        PAYMENT_DATE DATE 
NOT NULL
                     
CHECK(PAYMENT_DATE >= DATE('1969-12-31')),
        AMOUNT        
DECIMAL(7,2)   NOT NULL
                     
CHECK (AMOUNT > 0),
        
FOREIGN KEY (PLAYERNO) REFERENCES PLAYERS (PLAYERNO))
;
CREATE TABLE COMMITTEE_MEMBERS
       (PLAYERNO      
INTEGER NOT NULL,
        BEGIN_DATE    DATE 
NOT NULL,
        END_DATE      DATE,
        POSITION      
CHAR(20),
        
PRIMARY KEY   (PLAYERNO, BEGIN_DATE),
        
FOREIGN KEY   (PLAYERNO) REFERENCES PLAYERS (PLAYERNO),
        
CHECK(BEGIN_DATE < END_DATE),
        
CHECK(BEGIN_DATE >= DATE('1990-01-01')))
;
posted @ 2007-08-17 17:11 CoderDream 阅读(2098) | 评论 (3)编辑 收藏

<2007年8月>
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用链接

留言簿(5)

我参与的团队

随笔分类(231)

随笔档案(229)

文章分类(3)

文章档案(3)

收藏夹(440)

友情链接

搜索

  •  

积分与排名

  • 积分 - 60374
  • 排名 - 170

最新评论

阅读排行榜

评论排行榜