-
Notifications
You must be signed in to change notification settings - Fork 0
/
schema.sql
2454 lines (2424 loc) · 88.2 KB
/
schema.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/* 校務系統資料綱要設定程式
作者:俞旭昇Shiu-Sheng Yu
2004/02/26, 加入核准儘後召集延長日期等4個欄位
2004/05/10, 新增commonrank表格
2004/05/19, opened加入limitdeptid
2005/01/20, publication增加primary key 欄位, place改為not null
2005/02/19, staff.phone2增長為varchar(24)
2005/09/16, opened加入plimit各系限修人數功能
2005/11/07, student加入deptrank, 增加restcode(休學原因代碼)
2005/11/09, 新增groupcourse(必選課程表)
2005/11/17, studentfee 刪除 remit(抵免),reimburse(退費);加入paid(已繳費)
2005/11/29, student 加入jobstatus. 新增jobstatuscode
2005/12/28, student加入lessoraddress,lessor,lessorphone欄位,刪除dormnum欄位
2005/12/29, applydorm加入dormnum欄位, exempt加入internalcid(內抵課號)
2006/01/02, 加入dormmate(室友表), 加入applyexemptcode(申請抵免代碼)
2006/01/04, 加入roomtype(寢室分類表)
2006/01/18, 加入healthexam, posnegcode,abnormalcode
2006/02/17, student.entrydiploma(入學學歷)長度改為90,系所中文簡稱長度改為12
2006/05/03, 加入ta資料表
2006/06/13, 加入dailyusage統計表
2006/10/26, 加入tutor導師, 原先之advisor改為指導教授
2006/12/07, printtypecode,printlog加入printer欄位, 使不同文件可以印到不同印表機
2006/12/09, 移除table schoolcode, 相關設定移到driver.DB.txt
2006/12/10, 新增qualifycode, qualifycourse, qualifyrule, qualify表格
2007/03/20, department加入學雜費
2007/04/26, outcredit 加入division
2007/12/20, course加入課程簡稱, 負責系所
2007/12/21, student加入poorhonest
2008/07/07, student加入lastdegree,yearincome
2008/07/16, 改opened.place長度==>20
2009/02/20, 改opened.place長度==>32
2009/03/05, unit加入業務權限, A教B學C總
2009/03/09, 新增表格teamcode,teammember
2009/06/25, 新增opened.inenglish
2009/09/10, 新增opened.tafee
2009/09/15, 新增tequestion.coursetype(限用課程),opened.evaltype
2009/10/27, 將所有的text改為ntext
2009/12/02, 新增tequestion.needcount(列入總分計算),selected.tereject
2010/02/01, 新增whoudouble and whoassist有關系名欄位
2010/03/06, 新增courseopinion
2010/04/14, 新增assistancerequest
2010/04/18, 新增abilityitem, careergroup
2010/06/10, course.ability增長為20
2010/06/17, healthexam 加入 systolicpressure, diastolicpressure, pulse, bloodsugar
2010/08/12, student.autobiography
2010/08/16, lessonguidance, concernedstudent
2011/01/18, abilityitem加入class
2011/02/10, opened.limitdeptid增長為30
2011/06/03, osshow加入調查選項設定
2012/03/18, 將各種year改為int型態, 以便正確排序
2012/05/29, 加入applyaddcourse表格
2012/08/31, 加入opened.limitgrade
*/
use ncnu
go
dump transaction ncnu with no_log
go
drop procedure usp_query_attendliteracy
go
drop procedure usp_insert_attendliteracy
go
drop procedure usp_update_attendliteracy
go
drop procedure usp_update2_attendliteracy
go
drop procedure staff_email_list
go
drop procedure staff_login
go
drop procedure std_login
go
drop procedure staff_qvote
go
drop procedure std_qvote
go
drop procedure unit_email_list
go
drop table applyaddcourse
drop table lessonguidance
drop table concernedstudent
drop table abilityitem
drop table careergroup
drop table assistancerequest
drop table assistancemail
drop table courseopinion
drop table restcode
drop table leavecode
drop table leave
drop table applyleave
drop table absence
drop table commonrank
drop table groupcourse
drop table dormmate
drop table yearcourse
drop table posnegcode
drop table dailyusage
go
drop table officetypecode
go
drop table studentdriverlicense
go
drop table printlog
go
drop table driverlicensecode
go
drop table printtypecode
go
drop table trafficrecord
go
drop table trafficcode
go
drop table studentvehicle
go
drop table outsidestudentwork
go
drop table outsidestudentworker
go
drop table studentwork
go
drop table unitencouragestudent
go
drop table unitbudget
go
drop table budgetcode
go
drop table privilege
go
drop table privilegecode
go
drop table advisorcomment
go
drop table talkwith
go
drop table selectlog
go
drop table attendliteracy
go
drop table literacylecture
go
drop table mutualcourse
go
drop table optioncourse
go
drop table QVStaffAnswer
go
drop table QVStafflog
go
drop table QVStudentAnswer
go
drop table QVStudentlog
go
drop table QVquestionitem
go
drop table QVquestion
go
drop table QuestionVote
go
drop table merit
go
drop table highschoolcode
go
drop table recdeptcode
go
drop table uniondeptcode
go
drop table project
go
drop table patent
go
drop table honor
go
drop table teanswer
go
drop table tequestionitem
go
drop table tequestion
go
drop table teachevaluation
go
drop table whodouble
go
drop table whoassist
go
drop table exempt
go
drop table transfer
go
drop table teaching
go
drop table ta
go
drop table selected
go
drop table rest
go
drop table outcredit
go
drop table opened
go
drop table coremin
go
drop table conduct
go
drop table classroom
go
drop table assist
go
drop table schoolrequire
go
drop table require
go
drop table dmajor
go
drop table precourse
go
drop table course
go
drop table school
go
drop table experience
go
drop table publication
go
drop table studentfee
go
drop table studentrefund
go
drop table applydorm
go
drop table dormroom
drop table roomtype
go
drop table student
go
drop table department
go
drop table college
go
drop table position
go
drop table unit
go
drop table staff
go
drop table exemptcode
go
drop table applyexemptcode
go
drop table staffcode
go
drop table workcode
go
drop table edulevelcode
go
drop table schoolingcode
go
drop table dissertationcode
go
drop table stustatuscode
go
drop table corecode
go
drop table divicode
go
drop table remitcode
go
drop table meritcode
go
drop table jobstatuscode
go
drop table teammember
go
drop table teamcode
go
drop table tetypecode
go
drop table practicetypecode
go
create table practicetypecode /* 非講授課程代碼表 */
(
code char(1) not null, /* 代碼 */
description varchar(40), /* 名稱 */
primary key(code)
)
go
create table tetypecode /* 教學意見調查課程類別碼 */
(
code char(1) not null, /* 代碼 */
description varchar(10), /* 名稱 */
primary key(code)
)
go
create table teamcode /* 校隊代碼表 */
(
code varchar(2) not null, /* 代碼 */
description varchar(12) not null, /* 隊名 */
time varchar(40) null, /* 集訓時段 */
primary key(code)
)
go
create table officetypecode ( /* 專兼任職缺 */
code char(1), /* 1專, 2兼 */
description char(4) not null,
primary key(code)
)
go
create table posnegcode ( /* 健康檢查陰性(0)陽性(1)代碼表 */
code char(1) not null, /* 代碼 */
description varchar(6) not null, /* 描述 */
primary key(code)
)
go
create table abnormalcode ( /* 健康檢查正常(0)異常(1) */
code char(1) not null, /* 代碼 */
description varchar(6) not null, /* 描述 */
primary key(code)
)
go
/*
B: 學士班
G: 碩士班
P: 博士班
1: 休養室
2: 加長床
3: 器材室
4: 教官室
*/
create table roomtype ( /* 寢室分類代碼表 */
code char(1) not null, /* 代碼 */
description varchar(6) not null, /* 描述 */
primary key(code)
)
go
/*
'A' 碩士班
'B' 博士班
'C' 就業
'D' 服役
'E' 待業
'F' 退休
*/
create table jobstatuscode ( /* 校友現況代碼表 */
code char(1) not null, /* 現況代碼 */
description varchar(6), /* 現況描述 */
primary key(code)
)
go
/*
'A','經濟因素'
'B','健康因素'
'C','學業因素'
'D','工作因素'
'E','家庭因素'
'F','個人因素'
'G','兵役因素'
'H','其他因素'
'I','懷孕因素'
'J','分娩因素'
'K','撫育因素'
*/
create table restcode( /* 休學原因代碼表 */
code char(1) not null,
description varchar(10) not null,
primary key(code)
)
go
/*
1 職業聯結車
2 職業大客車
3 職業大貨車
4 職業小型車
5 普通聯結車
6 普通大客車
7 普通大貨車
8 普通小型車
9 普通重型機踏車
A 普通輕型機踏車
B 普通馬達三輪貨車
C 軍用大客車
D 軍用載客車
E 軍用小型車
F 國際(外國)駕駛
G 其他駕照(證)
H 學習駕駛證
*/
create table driverlicensecode ( /* 駕照種類代碼 */
code char(1) not null, /* 駕照種類代碼 */
description varchar(16) not null, /* 種類*/
primary key(code)
)
go
/*
A:警告
B:申誡
C:小過
D:大過
E:嘉獎
F:小功
G:大功
*/
create table meritcode ( /* 獎懲類別 */
code char(1) not null, /* 獎懲類別 */
description varchar(8) not null, /* 獎懲類別說明 */
point decimal(4,1) not null default 0, /* 加分 */
primary key(code)
)
go
/*
A: 重度身心障礙
B: 中度身心障礙
C: 輕度身心障礙
D: 因公撫恤
E: 因病撫恤
F: 撫恤期滿
G: 低收入戶子女
H: 原住民子女
I: 現役軍人子女
J: 921
K: 年收入40萬以下
L: 年收入60萬以下
M: 特殊境遇婦女
N: 收入30萬以下
O: 收入30-40萬
P: 收入40-50萬
Q: 收入50-60萬
R: 收入60-70萬
S: 莫拉克
T: 交換或外國學生
*/
create table remitcode ( /* 減免類別 */
code char(1) not null, /* 減免類別 */
description varchar(14) not null, /* 減免類別說明 */
primary key(code)
)
go
create table divicode ( /* 部別 */
code char(1) not null, /* 部別 */
description varchar(6) not null, /* 部別 */
primary key(code)
)
go
create table exemptcode ( /* 內外抵, 0內, 1外*/
code char(1) not null, /* 抵免類別 */
description varchar(4) not null, /* 抵免名稱 */
primary key(code)
)
go
create table applyexemptcode ( /* 內外抵, 0內, 1外, N不准 */
code char(1) not null, /* 抵免類別 */
description varchar(4) not null, /* 抵免名稱 */
primary key(code)
)
go
/* 核心課程類別 */
/* ================= */
create table corecode ( /* 核心類別 */
code char(1) not null, /* 核心類別代碼 */
description varchar(20) not null, /* 核心名稱 */
primary key(code)
)
go
/* 學生狀態代碼 */
/* =================== */
/* 0 -> 在學 */
/* 1 -> 休學 */
/* 2 -> 保留學籍 */
/* 3 -> 退學 */
/* 4 -> 肆業 */
/* 5 -> 畢業 */
create table stustatuscode ( /* 學生狀態代碼表 */
code char(1) not null, /* 學生狀態代碼 */
description varchar(8) not null, /* 學生狀態 */
primary key(code)
)
go
/* 論文分類代碼 */
/* =================== */
/* A->期刊論文 */
/* B->會議論文 */
/* C->學術專書 */
/* D->學位論文 */
/* E->技術報告 */
/* F->譯作 */
/* G->教科書 */
/* H->一般文學 */
/* I->其他 */
create table dissertationcode ( /* 論文分類代碼檔 */
code char(1) not null, /* 論文分類代碼 */
description varchar(8) not null, /* 論文分類 */
primary key(code)
)
go
/* 修業狀況代碼 */
/* =================== */
/* 0 -> 其他 */
/* 1 -> 畢業 */
/* 2 -> 結業 */
/* 3 -> 肆業 */
create table schoolingcode ( /* 修業狀況代碼檔 */
code char(1) not null, /* 修業狀況代碼 */
description varchar(6) not null, /* 修業狀況 */
primary key(code)
)
go
/* 教育程度代碼 */
/* =================== */
/* 10 -> 國小 */
/* 21 -> 國中 */
/* 22 -> 初職 */
/* 23 -> 簡易師範 */
/* 31 -> 高中 */
/* 32 -> 高職 */
/* 33 -> 師範 */
/* 41 -> 二專 */
/* 42 -> 三專 */
/* 43 -> 五專 */
/* 44 -> 六年制醫專 */
/* 50 -> 大學 */
/* 60 -> 碩士 */
/* 70 -> 博士 */
/* 71 -> 榮譽博士 */
/* 1X -> 國小 */
/* 2X -> 國(初)中 */
/* 3X -> 高中(職) */
/* 4X -> 專科 */
/* 5X -> 大學 */
/* 6X -> 碩士 */
/* 7X -> 博士 */
create table edulevelcode ( /* 教育程度代碼檔 */
code char(2) not null, /* 教育程度代碼 */
description varchar(12) not null, /* 教育程度 */
primary key (code)
)
go
/* 在職狀態 */
/* =================== */
/* A -> 在職 */
/* B -> 借調 */
/* C -> 留職停薪 */
/* D -> 育嬰假 */
/* E -> 延長病假 */
/* F -> 休假研究 */
/* G -> 停職 */
/* H -> 退休 */
/* I -> 離職、資遺 */
/* J -> 兼職(教師) */
/* K -> 停止兼職(教師) */
/* */
/* A-F -> 在職 */
/* G-I -> 退離職 */
/* J -> 兼職(教師) */
/* K -> 停止兼職(教師) */
create table workcode ( /* 人員在職狀態代碼檔 */
code char(1) not null, /* 人員在職狀態代碼 */
description varchar(20) not null, /* 人員在職狀態 */
primary key (code)
)
go
/* 人員區分 */
/* =================== */
/* A -> 教師 */
/* B -> 研究人員 */
/* C -> 職員 */
/* D -> 助教 */
/* E -> 稀少性科技人員 */
/* F -> 教官 */
/* G -> 駐衛警 */
/* H -> 技工 */
/* I -> 工友 */
/* J -> 約聘教師 */
/* K -> 約僱人員 */
/* L -> 臨時人員 */
/* M -> 計畫助理 */
/* N -> 工讀生 */
/* O -> 職務代理人 */
/* P -> 兼任教師 */
/* Q -> 專案計畫助理 */
/* R -> 海外聯招助理 */
/* S -> 校管理費進用人員 */
/* A-E 為正式編制教職員 */
/* G-I 為正式編制技工、工友 */
create table staffcode ( /* 人員區分代碼檔 */
code char(1) not null, /* 人員區分代碼 */
description varchar(20) not null, /* 人員區分 */
primary key (code)
)
go
create table dailyusage /* 每日使用統計資料 */
(
logday char(10) not null, /* 日期 */
usage decimal(7,0) not null, /* 使用量 */
primary key(logday)
)
go
create table college /* 學院資料 */
(
colid char(1) not null, /* 學院代碼 */
name varchar(10) not null, /* 學院名稱 */
ename varchar(40) null, /* 學院英文名稱 */
edu_colid char(4) null, /* 教育部學院代碼 */
primary key(colid)
)
go
create table department /* 系所資料 */
(
deptid varchar(3) not null, /* 系所代碼 */
colid char(1) not null, /* 所屬學院代碼 */
degree varchar(30) not null, /* 學士學位名稱 */
gdegree varchar(30) not null, /* 碩士學位名稱 */
cname varchar(50) not null, /* 系所中文名 */
ename varchar(90) not null, /* 系所英文名 */
sname varchar(20) not null, /* 中文簡稱 */
mincredit numeric(3,0) not null, /* 大學部最低畢業學分 */
gmincredit numeric(2,0) not null, /* 研究所最低畢業學分 */
pmincredit numeric(2,0) not null, /* 博士班最低畢業學分 */
dmincredit numeric(2,0) not null, /* 直攻生最低畢業學分 */
note ntext not null, /* 選課注意事項 */
uid char(4) null, /* 內部單位代碼 */
edegree varchar(50) null, /* 學士學位英文名稱 */
egdegree varchar(50) null, /* 碩士學位英文名稱 */
abbredegree varchar(8) null, /* 學士學位英文縮寫名稱 */
abbregdegree varchar(8) null, /* 博碩士學位英文縮寫名稱 */
pdegree varchar(30) null, /* 博士學位名稱 */
epdegree varchar(60) null, /* 博士學位英文名稱 */
abbrepdegree varchar(8) null, /* 博士學位英文縮寫名稱 */
tuition numeric(6,0) not null default 0, /* 學費 */
incidental numeric(6,0) not null default 0, /* 雜費 */
basic numeric(6,0) not null default 0, /* 學雜費基數 */
bcreditfee numeric(6,0) not null default 0, /* 學士學分費 */
gcreditfee numeric(6,0) not null default 0, /* 碩博士學分費 */
fortuition numeric(6,0) not null default 0, /* 外國學生學士學費 */
forincidental numeric(6,0) not null default 0, /* 外國學生學士雜費 */
forcreditfee numeric(6,0) not null default 0, /* 外國學生學士學分費 */
forgbasic numeric(6,0) not null default 0, /* 外國學生碩士學雜費基數 */
forgcreditfee numeric(6,0) not null defulat 0, /*外國學生碩士學分費 */
forpbasic numeric(6,0) not null default 0, /* 外國學生博士學雜費基數 */
forpcreditfee numeric(6,0) not null defulat 0, /*外國學生博士學分費 */
fwave1 numeric(6,0) not null default 0, /* 撫卹期滿減免學費 */
fwave2 numeric(6,0) not null default 0, /* 撫卹期滿減免雜費 */
hwave1 numeric(6,0) not null default 0, /* 原住民減免學費 */
hwave2 numeric(6,0) not null default 0, /* 原住民減免雜費 */
edu_deptid char(6) null, /* 教育部系所代碼 */
sort_order int null,
edutarget ntext null, /* 學士班教育目標 */
coursemap image null, /* 學士班課程地圖 */
careermap image null, /* 學士班職涯進路圖 */
gedutarget ntext null, /* 碩士班教育目標 */
gcoursemap image null, /* 碩士班課程地圖 */
gcareermap image null, /* 碩士班職涯進路圖 */
pedutarget ntext null, /* 博士班教育目標 */
pcoursemap image null, /* 博士班課程地圖 */
pcareermap image null, /* 博士班職涯進路圖 */
primary key (deptid),
foreign key(colid) references college,
)
go
create index department_colid on department(colid,deptid)
go
create table staff /* 員工基本資料 */
(
id varchar(10) not null, /* 身分證字號或護照號碼 */
name nvarchar(12) not null, /* 姓名 */
ename varchar(30) null, /* 英文姓名 */
sex char(1) not null, /* 性別: M: 男 F: 女 */
birthday varchar(7) null, /* 生日 */
education char(2) null, /* 最高學歷教育程度代碼 (用公務人員代碼) */
educationstatus char(1) null, /* 最高學歷修業狀況代碼 (修業狀況: 1:畢業 2:結業 3:肄業 0:其他) */
account char(14) null, /* 郵局帳號 */
addr1 varchar(80) null, /* 戶籍地址 */
addr2 varchar(80) null, /* 通訊地址 */
phone1 varchar(24) null, /* (公)電話 */
phone2 varchar(24) null, /* (宅)電話 */
mphone varchar(12) null, /* 行動電話 */
email varchar(40) null, /* email */
homePage varchar(60) null, /* www HomePage */
workstatus char(1) not null default 'A', /* 在職狀態 */
stafftype char(1) not null default 'A', /* 人員區分代碼 */
title varchar(12) not null, /* 職稱 */
etitle varchar(50) not null, /* 英文職稱 */
parttitle varchar(26) null, /* 主要兼職職稱 */
hiredate varchar(7) not null, /* 任現職到職日期 */
salaryrank char(3) null, /* 現職支薪官職等 (用公務人員代碼) */
salaryclass char(3) null, /* 現職支薪俸級(階) (用公務人員代碼) */
salarypoint numeric(4,0) null, /* 支薪俸點 */
leavedate varchar(7) null, /* 退離職日期 */
password varchar(20) null, /* 密碼 */
lastupdatedate char(7) null, /* 資料最後異動日期 */
photo image null, /* 照片 */
staffid int null, /* 員工編號 */
ecard_uid char(10) null, /* -- 悠遊卡內部卡號 */
ecard_no char(10) null, /* -- 悠遊卡外部卡號 */
encpass char(128) null, /* sha512 */
staffid2 char(5) null, /* 員工編號:字串 */
primary key (id)
)
create index staff_name on staff(name)
create unique index staff_staffid2 on staff(staffid2)
go
create table student /* 學生學籍資料 */
(
studentid varchar(10) not null, /* 學號 */
deptid varchar(3) not null, /* 所屬系所代碼 */
name nvarchar(20) not null, /* 姓名 */
birthday varchar(7) null, /* 生日 */
sex char(1) not null, /* 性別 */
grade char(1) not null default '1', /* 年級 */
type varchar(30) not null default '一般生', /* 身分別 */
status char(1) not null default '0', /* 學生狀態,0在學,1休學,2直攻博士,3退學,4肄業,5畢業,6交換學生,7已離校交換生 */
leavedate int null, /* 離校日期 */
email varchar(40) null, /* 電子郵件信箱 */
id varchar(10) null, /* 身分證字號 */
phone1 varchar(24) null, /* 戶籍地聯絡電話 */
citizen varchar(12) null default 'ROC', /* 國籍 */
addr1 varchar(100) null, /* 戶籍地址 */
addr2 varchar(100) null, /* 通訊地址 */
thesis varchar(255) null, /* 論文題目 */
tscore numeric(5,2) null default -1, /* 學位考試成績 */
diplomaid char(24) null, /* 離校證書號碼 */
ediplomaid char(10) null, /* 英文學位證書序號 */
entrydoc varchar(40) null, /* 入學文號 */
entrydiploma varchar(90) null, /* 入學學歷 */
password varchar(20) null, /* 密碼 */
entrydate int null, /* 入學年月 */
ograduate char(1) not null default '1', /* 原學校畢肄業,1畢,2肆 */
oentrydoc varchar(40) null, /* 原學校入學資格核准年月文號 */
ograde char(1) null, /* 原學校肄業年級 */
ograduatedoc varchar(40) null, /* 原學校畢業證書號碼 */
equaldoc varchar(40) null, /* 比敘大專同等學力年月文號 */
pracscore numeric(5,1) null default -1, /* 實習成績 */
leavereason varchar(30) null, /* 離校原因 */
deptgroup varchar(20) null, /* 系所組別 */
zipcode1 varchar(5) null, /* 戶籍地郵遞區號 */
pname nvarchar(20) null, /* 監護人姓名 */
account char(14) null, /* 郵局帳號 */
age numeric(3,0) null, /* 年齡 */
alive char(1) null default 'Y', /* 存歿 */
average numeric(5,2) null default 0, /* 學業平均成績 */
military varchar(6) null default 'N', /* 兵役別 */
cardserial numeric(1,0) null default 0, /* 學生證遺失序號 */
phone2 varchar(24) null, /* 通訊地址聯絡電話 */
zipcode2 varchar(5) null, /* 通訊地郵遞區號 */
class char(1) not null default 'B', /* 部別, B學士班,G碩士班,P博士班 */
ename varchar(40) null, /* 英文名 */
ethesis varchar(255) null, /* 英文論文題目 */
class_no varchar(2) null default 0, /* 班別 */
career varchar(255) null default '求職中:', /* 公司(學校)及職稱 */
note varchar(255) null, /* 備註 */
remittype char(1) null, /* 減免類別 */
conscriptdate varchar(7) not null default '', /* 核准儘後召集日期 */
conscriptnum varchar(30) not null default '', /* 核准儘後召集字號 */
cconsdate varchar(7) not null default '', /* 消滅儘後召集日期 */
cconscript varchar(30) not null default '', /* 消滅儘後召集字號 */
postponedate varchar(7) not null default '', /* 核准緩徵日期 */
postponenum varchar(30) not null default '', /* 核准緩徵字號 */
cpostdate varchar(7) not null default '', /* 消滅緩徵日期 */
cpostpone varchar(30) not null default '', /* 消滅緩徵字號 */
studentfrom varchar(20) not null default '', /* 學生籍貫(出生地) */
militaryrank varchar(10) not null default '', /* 軍種階級 */
delayreason varchar(20) not null default '', /* 延畢原因 */
phone3 varchar(24) not null default '', /* 行動電話號碼 */
upboundary decimal(3,0) not null default 40, /* 工讀時數上限 */
advisor varchar(10) null, /* 指導教授 */
militarydept varchar(10) not null default '', /* 團管部 */
internaltype varchar(10) not null default '', /* 校內身分別 */
accountid varchar(10) null, /* 郵局戶名 */
reconscriptdate varchar(7) not null default '', /* 核准儘後召集延長日期 */
reconscriptnum varchar(30) not null default '', /* 核准儘後召集延長字號 */
repostponedate varchar(7) not null default '', /* 核准緩徵延長日期 */
repostponenum varchar(30) not null default '', /* 核准緩徵延長字號 */
applyleavedate char(7) not null default '', /* 辦理離校日期 */
picture image null, /* 入學照片 */
rank varchar(7) null, /* 全班排名 */
deptrank varchar(7) null, /* 全系排名 */
jobstatus char(1) null default 'E', /* 現況, A碩士班,B博士班,C就業,D服役,E待業,F退休 */
lessoraddress varchar(100) null, /* 租屋地址 */
lessor nvarchar(10) null, /* 房東姓名 */
lessorphone varchar(24) null, /* 房東電話 */
lessorhome varchar(100) null, /* 房東地址 */
contact nvarchar(30) null, /* 緊急聯絡人及電話 */
tutor varchar(10) null, /* 導師id */
modifydate varchar(8) null, /* 聯絡資訊修改日期 */
poorhonest char(1) not null default 'N', /* 清寒學生 */
lastdegree varchar(36) null, /* 最高學歷 */
yearincome decimal(4) not null default 0, /* 年收入 */
deptcname varchar(50) null, /* 系中文名 */
deptename varchar(70) null, /* 系英文名 */
colcname varchar(10) null, /* 院中文名 */
colename varchar(40) null, /* 院英文名 */
taappsem varchar(4) null, /* 通過TA認證學期 */
ecard_uid char(10) null, /* -- 悠遊卡內部卡號 */
ecard_no char(10) null, /* -- 悠遊卡外部卡號 */
autobiography ntext null, /* 自傳 */
encpass char(128) null, /* sha512 */
primary key (studentid),
foreign key(deptid) references department,
foreign key(advisor) references staff,
foreign key(tutor) references staff
)
create index student_name on student(name)
create index student_division on student(studentid,class)
go
create table unit ( /* 單位資料 */
layer char(1) not null, /* 層級 */
uid char(4) not null, /* 內部單位代碼 */
belong char(4) null, /* 隸屬單位 */
attrib char(1) null, /* 單位屬性 */
sort_order int null, /* 排序 */
ufullname varchar(80) not null, /* 單位全名 */
ufullname2 varchar(80) not null, /* 單位全名2 */
uabbrname varchar(40) not null, /* 單位簡稱 */
efullname varchar(100) not null, /* 英文單位全名 */
eabbrname varchar(100) not null, /* 英文單位簡稱 */
extphone varchar(12) null, /* 專線電話號碼 */
intphone varchar(6) null, /* 內線電話號碼(分機) */
fax varchar(12) null, /* 傳真號碼 */
email varchar(30) null, /* 電子郵件 */
manager char(7) null, /* 主管職位代碼 */
lastupdatedate char(7) null, /* 資料最後異動日期 */
active char(1) not null default 'Y', /* 現有單位 */
www varchar(100) null, /* 單位網址 */
edu_deptid char(6) null, /* 教育部代碼 */
prirequire varchar(5) null, /* 業務權限 */
joomla_url varchar(200) null,
sort_order int null, /* 排序 */
primary key (uid),
foreign key(belong) references unit,
)
go
create table position ( /* 職位資料 */
pid char(7) not null, /* 職缺代號 */
officetype char(1) not null default '1', /* 專、兼任: 1:專任, 2:兼任 */
uid char(4) not null, /* 所屬部門代碼 */
sort_order int null, /* 排序 */
stafftype char(1) not null, /* 人員區分代碼 */
title varchar(20) not null, /* 職稱 */
etitle varchar(50) not null, /* 英文職稱 */
id varchar(10) null, /* 現職人員身份證字號 */
hiredate varchar(7) null, /* 現職人員到職日期 */
phone varchar(19) null, /* (公)電話號碼 */
actstatus char(1) not null default '0', /* 代理狀態,0有效,1無效 */
lastupdatedate char(7) null, /* 資料最後異動日期 */
deduct decimal(1,0) not null default 0, /* 扣抵鐘點數 */
jobs varchar(1000) null, /* 業務執掌 */
primary key(pid),
foreign key(uid) references unit,
foreign key(id) references staff
)
create index position_id on position(id)
go
create table course /* 課程基本資料 */
(
courseid varchar(8) not null, /* 課號 */
cname varchar(50) not null, /* 中文名稱 */
ename varchar(100) null, /* 英文名稱 */
grade varchar(4) not null, /* 修習年級 */
credit numeric(3,1) not null default 0, /* 學分數 */
practice char(1) not null default '0', /* 非講授課程 */
division char(1) not null default 'B', /* 最高承認部別 */
hours numeric(3,1) not null default 0, /* 鐘點數 */
repeat char(1) not null default 'N', /* 可否重覆修 */
sname varchar(20) null, /* 課程簡稱 */
chargedept varchar(3) null, /* 負責系所 */
coursesyllabus ntext null, /* 課程規範 */
ability varchar(30) null, /* 核心能力 */
career varchar(30) null, /* 職涯類別 */
primary key (courseid),
foreign key(chargedept) references department
)
create index course_grade on course(courseid,grade)
go
create table precourse /* 先修學分要求 */
(
courseid varchar(8) not null, /* 課號 */
precourseid varchar(8) not null, /* 先修課號 */
start numeric(3,0) not null, /* 啟用年份 */
stop numeric(3,0) not null default 999, /* 失效年份 */
primary key (courseid,precourseid),
foreign key (courseid) references course,
foreign key (precourseid) references course
)
create index precourse_pre on precourse(precourseid)
go
create table schoolrequire /* 校定必修及核心課程 */
(
courseid varchar(8) not null, /* 課號 */
start numeric(3,0) not null, /* 啟用年份 */
stop numeric(3,0) not null default 999, /* 失效年份 */
coretype char(1) not null default '1', /* 核心類別 */
primary key (courseid,start,stop),
foreign key (courseid) references course
)
go
create table require /* 必修學分 */
(
courseid varchar(8) not null, /* 課號 */
deptid varchar(3) not null, /* 要求必修系所代碼 */
start numeric(3,0) not null, /* 啟用年份 */
stop numeric(3,0) not null default 999, /* 失效年份 */
class char(1) not null default 'B', /* 學碩博 */
primary key (courseid,deptid,start,stop,class),
foreign key (courseid) references course,
foreign key (deptid) references department
)
create index require_id on require(courseid)
create index require_deptid on require(deptid)
go
create table assist /* 輔系必修學分 */
(
courseid varchar(8) not null, /* 課號 */
deptid varchar(3) not null, /* 輔系系所代碼 */
start numeric(3,0) not null, /* 啟用年份 */
stop numeric(3,0) not null default 999, /* 失效年份 */
primary key (courseid,deptid,start,stop),
foreign key (courseid) references course,
foreign key (deptid) references department
)
create index assist_id on assist(courseid)
create index assist_deptid on assist(deptid)
go
create table dmajor /* 雙主修必修學分 */
(
courseid varchar(8) not null, /* 課號 */
deptid varchar(3) not null, /* 雙主修系所代碼 */
start numeric(3,0) not null, /* 啟用年份 */
stop numeric(3,0) not null default 999, /* 失效年份 */
primary key (courseid,deptid,start,stop),
foreign key (courseid) references course,
foreign key (deptid) references department
)
create index dmajor_id on dmajor(courseid)
create index dmajor_deptid on dmajor(deptid)
go
create table classroom /* 教室資料 */
(
classroomid varchar(8) not null, /* 教室代碼 */
capacity numeric(3,0) not null, /* 容量 */
equipment varchar(30) null, /* 設備 */
deptid varchar(3) null, /* 優先分配系所 */
managementunit char(4) null, /* 管理單位 */
powerconsumption int null default 0, /* 電力消耗 */
fee int null default 0, /*
primary key (classroomid),
foreign key(management) references unit
)
go
create table roomtypecode (
code char(1) not null,
description varchar(10) not null,
primary key(code)
)
go
insert roomtypecode(code,description) values ('A', '教室')
insert roomtypecode(code,description) values ('B', '會議室')
insert roomtypecode(code,description) values ('C', '表演廳')
insert roomtypecode(code,description) values ('D', '運動設施')
insert roomtypecode(code,description) values ('E', '自修室')
insert roomtypecode(code,description) values ('F', '實驗室')
insert roomtypecode(code,description) values ('G', '辦公室')
insert roomtypecode(code,description) values ('H', '教師研究室')
insert roomtypecode(code,description) values ('I', '學生研究室')
insert roomtypecode(code,description) values ('J', '廁所')
insert roomtypecode(code,description) values ('K', '茶水間')
insert roomtypecode(code,description) values ('L', '儲藏室')
go
create table room /* 空間資料 */
(
roomid varchar(8) not null, /* 空間代碼 */
roomtype char(1) not null default 'A', /* 類別 */
capacity numeric(3,0) not null, /* 容納人數 */
equipment varchar(40) null, /* 設備 */
managementunit char(4) null, /* 管理單位 */
area float null, /* 面積 */
powerconsumption int null default 0, /* 電力消耗 */
memo nvarchar(40) null, /* 附注 */
fee int null default 0,
primary key (classroomid),
foreign key(management) references unit
)
go
create table conduct /* 操行與學期成績 */
(
studentid varchar(10) not null, /* 學號 */
year int not null, /* 學年期 */
score numeric(4,1) not null default -1, /* 操行成績 */
average numeric(6,2) null, /* 學期平均成績 */
rank varchar(7) null, /* 學期排名 */
deptid varchar(3) null, /* 當學期所屬系所 */
grade char(1) null, /* 當學期之年級 */
failpass numeric(3,1) null, /* 當學期未過學分數 */
credit numeric(3,1) null, /* 當學期總學分數 */
primary key (studentid,year),
foreign key(studentid) references student,
foreign key(deptid) references department
)
create index conduct_sid on conduct(studentid)
go
create table coremin /* 核心課程最低學分數 */