SQL修改记录 /*2019-09-05 开始这个文件*/ /*2019-07-24 修改字段为bigint*/ Alter table Achivement alter column achivementid set data type bigint ; Alter table BadgeLog alter column badgelogid set data type bigint ; Alter table ConnectLog alter column connectlogid set data type bigint ; Alter table DeviceUseLog alter column deviceuselogid set data type bigint ; Alter table EmoneyLog alter column emoneylogid set data type bigint ; Alter table ExamAnswer alter column examanswerid set data type bigint ; Alter table HearAnswer alter column examanswerid set data type bigint ; Alter table PointLog alter column pointlogid set data type bigint ; Alter table RaceScore alter column racescoreid set data type bigint ; Alter table WordAchive alter column wordachiveid set data type bigint ; /*修改字段为bigint结束*/ ALTER SEQUENCE seq_achivementid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_badgelogid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_connectlogid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_deviceuselogid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_emoneylogid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_examanswerid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_hearanswerid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_pointlogid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_racescoreid MAXVALUE 9223372036854775807 ; ALTER SEQUENCE seq_wordachiveid MAXVALUE 9223372036854775807 ; alter table UnivAssignComm alter column voice set data type varchar(100) , alter column description set data type varchar(1000) , alter column memo set data type varchar(1000) ; alter table UnivAssignComm alter column voice set default '' , alter column description set default '' , alter column memo set default '' ; /*修改高教成绩为带小数点*/ Alter table UnivAchivement alter column score set data type decimal(5,2) , alter column accuracy set data type decimal(5,2) , alter column fluent set data type decimal(5,2) , alter column integrity set data type decimal(5,2) ; Alter table UnivHearAnswer alter column score set data type decimal(5,2) , alter column origiscore set data type decimal(5,2) , add column trueScore decimal(5,2) default 0 ; Alter table UnivExamAnswer alter column origiscore set data type decimal(5,2) , alter column score set data type decimal(5,2) , alter column truescore set data type decimal(5,2) , alter column machinescore set data type decimal(5,2) , alter column humanscore set data type decimal(5,2) ; Alter table UnivRaceScore alter column score set data type decimal(5,2) , alter column accuracy set data type decimal(5,2) , alter column fluent set data type decimal(5,2) , alter column integrity set data type decimal(5,2) ; Alter table UnivRaceMaxScore alter column maxScore set data type decimal(5,2) ; Alter table UnivWordAchive alter column score set data type decimal(5,2) , alter column accuracy set data type decimal(5,2) , alter column fluent set data type decimal(5,2) , alter column integrity set data type decimal(5,2) ; Alter table UnivFinishLessonStat alter column maxscore set data type decimal(5,2) , alter column avgscore set data type decimal(5,2) ; /*UnivUserHonor.totalScore 不改*/ Alter table UnivUserHonor alter column totalScore set data type decimal(25,2) ; Alter table UnivPronoStat alter column totalscore set data type numeric(30,2) default 0.0 ; /*高教同基教的保持一致*/ Alter table UnivExam add column isoral integer default 1 , add column teacherId bigint default 0 ; comment on column UnivExam.isoral is '考试类型,0听说;1口语;2听力;3同步训练' ; comment on column UnivExam.teacherid is '教师id' ; Alter table UnivClassOwnexam add column objectType smallint default 1 ; comment on column UnivClassOwnexam.classesId is '班级ID,或学校ID,或地区ID' ; comment on column UnivClassOwnexam.objectType is '1班级小组,2学校,3区县,4市,5省' ; alter table univassignment add assigntype character varying(50) DEFAULT 'L'::character varying ; COMMENT ON COLUMN univassignment.assigntype IS '作业类型,L课程默认,W单词' ; alter table univclassownhear add objecttype smallint DEFAULT 1 ; COMMENT ON COLUMN classownhear.objecttype IS '1班级小组,2学校, 3区县,4市,5省' ; alter table univstudent add signature character varying(300) DEFAULT ''::character varying; COMMENT ON COLUMN univstudent.signature IS '个性签名'; alter table univteacher add signature character varying(300) DEFAULT ''::character varying; COMMENT ON COLUMN univteacher.signature IS '个性签名'; /*高教所有听力考试,包括老的和最新听力考试,isoral -1 老的; 2019-06-12*/ Create or Replace view V_UnivHearExam as select examid , examtype , isrecommend , title , description , 1 as exampapercount , concat('[{"paperId":' , hearpaperid ,'}]') as exampapers , created , starttime , endtime , isnetexam , teacherid , -1 as isoral from UnivHearexam UNION select a.examid , a.examtype , a.isrecommend , a.title , a.description , a.exampapercount , a.exampapers , a.created , a.starttime , a.endtime , a.isnetexam , a.teacherid , a.isoral from UnivExam a where a.isoral = 2 ; /*视图 ,教师拥有及被授权的听力试卷*/ create or replace view V_UnivhearPaper as SELECT m.hearpaperid, n.teacherId, m.examlevel, m.title, '' as subtitle,'' as memo, '' as content, m.status, m.areaid , -1 as isOral FROM HearPaper m INNER JOIN ( SELECT b.hearpaperid, b.objectId as teacherId FROM UnivHearPaperAuth b where b.objectType =1 UNION SELECT b.hearpaperid, c.teacherId FROM UnivTeacher c inner join UnivHearPaperAuth b on c.schoolId = b.objectId and b.objectType =2 UNION SELECT b.hearpaperid, c.teacherId FROM UnivTeacher c inner join UnivHearPaperAuth b on c.areaId = b.objectId and b.objectType =3 UNION SELECT b.hearpaperid, c.teacherId FROM UnivTeacher c inner join UnivHearPaperAuth b on floor( c.areaId /100 ) * 100 = b.objectId and b.objectType =4 UNION SELECT b.hearpaperid, c.teacherId FROM UnivTeacher c inner join UnivHearPaperAuth b on floor( c.areaId /10000 ) * 10000 = b.objectId and b.objectType =5 ) as n ON m.hearpaperid = n.hearpaperid UNION SELECT m.examPaperId AS hearpaperid, n.teacherId , m.examLevel , m.title ,'' as subtitle,'' as memo, '' as content , m.status , m.areaid , m.isOral FROM ExamPaper M INNER JOIN ( SELECT b.examPaperId , b.objectId as teacherId FROM UnivExamPaperAuth b where b.objectType =1 UNION SELECT b.examPaperId , c.teacherId FROM UnivTeacher c inner join UnivExamPaperAuth b on c.schoolId = b.objectId and b.objectType =2 UNION SELECT b.examPaperId , c.teacherId FROM UnivTeacher c inner join UnivExamPaperAuth b on c.areaId = b.objectId and b.objectType =3 UNION SELECT b.examPaperId , c.teacherId FROM UnivTeacher c inner join UnivExamPaperAuth b on floor( c.areaId /100 ) * 100 = b.objectId and b.objectType =4 UNION SELECT b.examPaperId , c.teacherId FROM UnivTeacher c inner join UnivExamPaperAuth b on floor( c.areaId /10000 ) * 10000 = b.objectId and b.objectType =5 ) as n ON m.isOral = 2 and m.examPaperId = n.examPaperId ; /*视图 ,外语学院教师拥有及被授权的口语试卷*/ create or replace view V_UnivexamPaper as SELECT m.examPaperId , m.authorType , n.teacherId , m.examLevel , m.title , m.isRecommend , '' as part1Text , m.part1Voice , m.part1OrigiScore , '' as part2Text , m.part2Voice , '' as part2Question , m.part2EachOrigiScore , m.totalScore , m.status , m.areaid , m.content , m.machineScore , m.humanScore , m.usedArea , m.paperFile , m.md5Code , m.isOral FROM ExamPaper M INNER JOIN ( SELECT b.examPaperId , b.objectId as teacherId FROM UnivExamPaperAuth b where b.objectType =1 UNION SELECT b.examPaperId , c.teacherId FROM UnivTeacher c inner join UnivExamPaperAuth b on c.schoolId = b.objectId and b.objectType =2 UNION SELECT b.examPaperId , c.teacherId FROM UnivTeacher c inner join UnivExamPaperAuth b on c.areaId = b.objectId and b.objectType =3 UNION SELECT b.examPaperId , c.teacherId FROM UnivTeacher c inner join UnivExamPaperAuth b on floor( c.areaId /100 ) * 100 = b.objectId and b.objectType =4 UNION SELECT b.examPaperId , c.teacherId FROM UnivTeacher c inner join UnivExamPaperAuth b on floor( c.areaId /10000 ) * 10000 = b.objectId and b.objectType =5 ) as n ON m.examPaperId = n.examPaperId ; /*关于高教的修改结束*/