diff --git a/AIConsumption.sql b/AIConsumption.sql new file mode 100644 index 0000000..815dbfd --- /dev/null +++ b/AIConsumption.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS AIConsumption ( + ConsumptionId VARCHAR(255) NOT NULL, + UserId INT, + OrgUnitId INT, + Date DATETIME, + GenerationCount INT, + ConsumptionSource INT COMMENT '1 = Lumi Pro, 2 = Lumi Creator+', + PRIMARY KEY (ConsumptionId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AccommodationsProfileLog.sql b/AccommodationsProfileLog.sql new file mode 100644 index 0000000..b637219 --- /dev/null +++ b/AccommodationsProfileLog.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS AccommodationsProfileLog ( + AccommodatedUserId BIGINT NOT NULL, + OrgUnitId BIGINT NOT NULL, + QuizTimeLimitMultiplier DECIMAL(5,2), + QuizTimeLimitExtraTime INT, + QuizControlAlwaysAllowRightClick TINYINT(1), + ModifiedBy BIGINT, + LastModified DATETIME NOT NULL, + PRIMARY KEY (AccommodatedUserId, OrgUnitId, LastModified) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ActivityExemptionsLog.sql b/ActivityExemptionsLog.sql new file mode 100644 index 0000000..be7554a --- /dev/null +++ b/ActivityExemptionsLog.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS ActivityExemptionsLog ( + ActivityExemptionsLogId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + ObjectId INT, + ActivityId VARCHAR(225), + LogTypeName VARCHAR(50), + LastModifiedUtc DATETIME NOT NULL, + LastModifiedBy INT, + ToolId INT, + PRIMARY KEY (ActivityExemptionsLogId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ActivityFeedCommentLog.sql b/ActivityFeedCommentLog.sql new file mode 100644 index 0000000..2f3e484 --- /dev/null +++ b/ActivityFeedCommentLog.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS ActivityFeedCommentLog ( + LogId VARCHAR(36) NOT NULL, + UserId INT, + OrgUnitId INT, + CommentId VARCHAR(36), + Action VARCHAR(16), + ActionDate DATETIME, + Content VARCHAR(3072), + PostId VARCHAR(36), + PRIMARY KEY (LogId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ActivityFeedCommentObjects.sql b/ActivityFeedCommentObjects.sql new file mode 100644 index 0000000..e3be879 --- /dev/null +++ b/ActivityFeedCommentObjects.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS ActivityFeedCommentObjects ( + OrgUnitId INT, + CommentId VARCHAR(36) NOT NULL, + LastModifiedBy INT, + LastModified DATETIME, + Content VARCHAR(3072), + IsDeleted TINYINT(1), + PostId VARCHAR(36), + Version BIGINT, + PRIMARY KEY (CommentId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ActivityFeedPostLog.sql b/ActivityFeedPostLog.sql new file mode 100644 index 0000000..1b001b9 --- /dev/null +++ b/ActivityFeedPostLog.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS ActivityFeedPostLog ( + LogId VARCHAR(36) NOT NULL, + UserId INT, + OrgUnitId INT, + PostId VARCHAR(36), + PostType VARCHAR(16), + Action VARCHAR(16), + ActionDate DATETIME, + DropboxId BIGINT, + Content VARCHAR(3072), + CommentCount INT, + AttachmentCount INT, + PRIMARY KEY (LogId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ActivityFeedPostObjects.sql b/ActivityFeedPostObjects.sql new file mode 100644 index 0000000..fb7c33d --- /dev/null +++ b/ActivityFeedPostObjects.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS ActivityFeedPostObjects ( + OrgUnitId INT, + PostId VARCHAR(36) NOT NULL, + PostType VARCHAR(16), + LastModifiedBy INT, + LastModified DATETIME, + DropboxId BIGINT, + Content VARCHAR(3072), + IsDeleted TINYINT(1), + CommentCount INT, + AttachmentCount INT, + Version BIGINT, + PRIMARY KEY (PostId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/Announcements.sql b/Announcements.sql new file mode 100644 index 0000000..38f2358 --- /dev/null +++ b/Announcements.sql @@ -0,0 +1,19 @@ +CREATE TABLE IF NOT EXISTS Announcements ( + AnnouncementId BIGINT NOT NULL, + OrgUnitId BIGINT NOT NULL, + Title VARCHAR(400), + StartDate DATETIME, + EndDate DATETIME, + IsGlobal TINYINT(1), + IsDraft TINYINT(1), + NumAttachments INT, + DeletedDate DATETIME, + DeletedByUserId INT, + LastModified DATETIME, + LastModifiedBy INT, + CreatedBy INT, + IsAuthorInfoShown TINYINT(1), + CreatedDate DATETIME, + ResultId BIGINT, + PRIMARY KEY (AnnouncementId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AssignmentSpecialAccess.sql b/AssignmentSpecialAccess.sql new file mode 100644 index 0000000..1e1f1bb --- /dev/null +++ b/AssignmentSpecialAccess.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS AssignmentSpecialAccess ( + DropboxId BIGINT NOT NULL, + UserId INT NOT NULL, + StartDate DATETIME, + EndDate DATETIME, + DueDate DATETIME, + ModifiedBy INT, + LastModified DATETIME, + IsDeleted TINYINT(1), + StartDateAvailabilityType SMALLINT, + EndDateAvailabilityType SMALLINT, + PRIMARY KEY (DropboxId, UserId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AssignmentSubmissionDetails.sql b/AssignmentSubmissionDetails.sql new file mode 100644 index 0000000..ec5fd5c --- /dev/null +++ b/AssignmentSubmissionDetails.sql @@ -0,0 +1,16 @@ +CREATE TABLE IF NOT EXISTS AssignmentSubmissionDetails ( + SubmissionId BIGINT NOT NULL, + DropboxId BIGINT NOT NULL, + UserId BIGINT, + GroupId BIGINT, + NumberOfFilesSubmitted INT, + TotalFileSize BIGINT, + SubmittedByUserId INT NOT NULL, + DateSubmitted DATETIME, + Comments VARCHAR(1000), + IsTurnItInExempt TINYINT(1), + IsDeleted TINYINT(1) NOT NULL, + IsPreview TINYINT(1) NOT NULL, + Version BIGINT NOT NULL, + PRIMARY KEY (SubmissionId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AssignmentSubmissions.sql b/AssignmentSubmissions.sql new file mode 100644 index 0000000..359466e --- /dev/null +++ b/AssignmentSubmissions.sql @@ -0,0 +1,20 @@ +CREATE TABLE IF NOT EXISTS AssignmentSubmissions ( + DropboxId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + SubmitterId BIGINT NOT NULL, + SubmitterType VARCHAR(5) NOT NULL, + FileSubmissionCount INT, + TotalFileSize BIGINT, + FeedbackUserId INT, + FeedbackIsRead TINYINT(1) NOT NULL, + Score DECIMAL(19, 9), + IsGraded TINYINT(1) NOT NULL, + LastSubmissionDate DATETIME, + Feedback VARCHAR(1000), + FeedbackLastModified DATETIME, + FeedbackReadDate DATETIME, + CompletionDate DATETIME, + IsDeleted TINYINT(1) NOT NULL, + Version BIGINT NOT NULL, + PRIMARY KEY (DropboxId, SubmitterId, SubmitterType) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AssignmentSummary.sql b/AssignmentSummary.sql new file mode 100644 index 0000000..5fe909e --- /dev/null +++ b/AssignmentSummary.sql @@ -0,0 +1,27 @@ +CREATE TABLE IF NOT EXISTS AssignmentSummary ( + DropboxId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + Name VARCHAR(128), + Category VARCHAR(128), + Type VARCHAR(10), + GradeItemId BIGINT, + PossibleScore DECIMAL(19, 9), + StartDate DATETIME, + EndDate DATETIME, + DueDate DATETIME, + IsRestricted TINYINT(1), + IsDeleted TINYINT(1), + TurnItInEnabled TINYINT(1), + IsHidden TINYINT(1), + SortOrder INT, + SubmissionType VARCHAR(18), + CompletionType VARCHAR(27), + ResultId INT, + CategoryId BIGINT, + Version BIGINT, + StartDateAvailabilityType SMALLINT, + EndDateAvailabilityType SMALLINT, + AIUtilization INT COMMENT '0=None, 1=AI+Review, 2=AI+Edit, 3=Assisted, 4=AI No Review', + Instructions TEXT, + PRIMARY KEY (DropboxId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AttendanceRegisters.sql b/AttendanceRegisters.sql new file mode 100644 index 0000000..884c2d2 --- /dev/null +++ b/AttendanceRegisters.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS AttendanceRegisters ( + AttendanceRegisterId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + Name VARCHAR(128), + Description VARCHAR(1000), + SchemeId BIGINT, + IsVisible TINYINT(1), + IncludeAllUsers TINYINT(1), + CauseForConcern DECIMAL(19, 9), + Version BIGINT, + DateDeleted DATETIME, + DeletedBy INT, + PRIMARY KEY (AttendanceRegisterId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AttendanceSchemes.sql b/AttendanceSchemes.sql new file mode 100644 index 0000000..c14ed77 --- /dev/null +++ b/AttendanceSchemes.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS AttendanceSchemes ( + SchemeId BIGINT NOT NULL, + OrgUnitId INT, + SchemeName VARCHAR(128), + SchemeSymbolId BIGINT NOT NULL, + SymbolName VARCHAR(128), + SymbolValue VARCHAR(50), + Percentage DECIMAL(19, 9), + Version BIGINT, + DateDeleted DATETIME, + DeletedBy INT, + PRIMARY KEY (SchemeId, SchemeSymbolId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AttendanceSessions.sql b/AttendanceSessions.sql new file mode 100644 index 0000000..87d995d --- /dev/null +++ b/AttendanceSessions.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS AttendanceSessions ( + AttendanceSessionId BIGINT NOT NULL, + AttendanceRegisterId BIGINT NOT NULL, + Name VARCHAR(128), + Description VARCHAR(256), + SortOrder INT, + Version BIGINT, + DateDeleted DATETIME, + DeletedBy INT, + PRIMARY KEY (AttendanceSessionId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AttendanceUserSessions.sql b/AttendanceUserSessions.sql new file mode 100644 index 0000000..b2bb6d1 --- /dev/null +++ b/AttendanceUserSessions.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS AttendanceUserSessions ( + UserId INT NOT NULL, + AttendanceSessionId BIGINT NOT NULL, + SchemeSymbolId BIGINT, + LastModified DATETIME, + LastModifiedBy INT, + IsDeleted TINYINT(1), + Version BIGINT, + PRIMARY KEY (UserId, AttendanceSessionId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AudioVideoProcessed.sql b/AudioVideoProcessed.sql new file mode 100644 index 0000000..b1cfb03 --- /dev/null +++ b/AudioVideoProcessed.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS AudioVideoProcessed ( + ContentId VARCHAR(36) NOT NULL, + RevisionId VARCHAR(36) NOT NULL, + RevisionNumber INT, + Type VARCHAR(5) COMMENT 'Audio or Video', + Source VARCHAR(32), + RevisionSize BIGINT, + Duration INT COMMENT 'Duration in seconds', + RequiredTranscoding TINYINT(1), + RequiredTranscribing TINYINT(1), + LastModified DATETIME, + PRIMARY KEY (ContentId, RevisionId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AwardObjects.sql b/AwardObjects.sql new file mode 100644 index 0000000..124a94c --- /dev/null +++ b/AwardObjects.sql @@ -0,0 +1,16 @@ +CREATE TABLE IF NOT EXISTS AwardObjects ( + AwardId BIGINT NOT NULL, + Name VARCHAR(256), + AwardTypeId INT, + Type VARCHAR(128) COMMENT 'Certificate or Badge', + Description VARCHAR(512), + ExpiryCalculationType VARCHAR(128), + ExpiryNotificationType VARCHAR(128), + ExpiryDate DATETIME, + ImagePath VARCHAR(1000), + CreatedByUserId BIGINT, + LastModified DATETIME, + IsDeleted TINYINT(1), + Criteria VARCHAR(1000), + PRIMARY KEY (AwardId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/AwardsIssued.sql b/AwardsIssued.sql new file mode 100644 index 0000000..4b7a2ea --- /dev/null +++ b/AwardsIssued.sql @@ -0,0 +1,19 @@ +CREATE TABLE IF NOT EXISTS AwardsIssued ( + IssuedId BIGINT NOT NULL, + AwardId BIGINT NOT NULL, + OrgUnitId BIGINT NOT NULL, + UserId BIGINT NOT NULL, + IssuedBy INT, + IssueDate DATETIME, + ExpiryDate DATETIME, + Criteria VARCHAR(1000), + Evidence VARCHAR(1000), + RevokedDate DATETIME, + RevokedReason VARCHAR(1000), + RevokedBy BIGINT, + LastModifiedBy BIGINT, + LastModifiedDate DATETIME, + Version BIGINT, + CertificateId VARCHAR(12), + PRIMARY KEY (IssuedId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/BrightspaceEmailLog.sql b/BrightspaceEmailLog.sql new file mode 100644 index 0000000..f7c1d07 --- /dev/null +++ b/BrightspaceEmailLog.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS BrightspaceEmailLog ( + MailId INT NOT NULL, + SenderUserId INT NOT NULL, + SenderAddress VARCHAR(256), + RecipientAddress VARCHAR(256), + RecipientType VARCHAR(4) COMMENT 'To, Cc, or Bcc', + DateTimeSent DATETIME NOT NULL, + Subject VARCHAR(1000), + PRIMARY KEY (MailId, RecipientAddress) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CPDCategories.sql b/CPDCategories.sql new file mode 100644 index 0000000..2683b7e --- /dev/null +++ b/CPDCategories.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS CPDCategories ( + CategoryId INT NOT NULL, + Name VARCHAR(256), + LastModified DATETIME, + DateDeleted DATETIME, + Version BIGINT, + PRIMARY KEY (CategoryId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CPDJobTargets.sql b/CPDJobTargets.sql new file mode 100644 index 0000000..1e2a8c5 --- /dev/null +++ b/CPDJobTargets.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS CPDJobTargets ( + PrincipalId INT NOT NULL, + CategoryId INT NOT NULL, + JobTitle VARCHAR(256), + StructuredMinutes INT, + UnstructuredMinutes INT, + StructuredRecordCount INT, + UnstructuredRecordCount INT, + StartDate DATETIME, + DateDeleted DATETIME, + LastModified DATETIME, + Version BIGINT, + PRIMARY KEY (PrincipalId, CategoryId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CPDMethods.sql b/CPDMethods.sql new file mode 100644 index 0000000..dceb715 --- /dev/null +++ b/CPDMethods.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS CPDMethods ( + MethodId INT NOT NULL, + Name VARCHAR(4000), + LastModified DATETIME, + DateDeleted DATETIME, + Version BIGINT, + PRIMARY KEY (MethodId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CPDQuestionAnswers.sql b/CPDQuestionAnswers.sql new file mode 100644 index 0000000..3e4a62d --- /dev/null +++ b/CPDQuestionAnswers.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS CPDQuestionAnswers ( + AnswerId INT NOT NULL, + AnswerText VARCHAR(4000), + QuestionId INT NOT NULL, + RecordId INT NOT NULL, + UserId INT NOT NULL, + Action VARCHAR(16), + LastModified DATETIME, + DateDeleted DATETIME, + Version BIGINT, + PRIMARY KEY (AnswerId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CPDQuestions.sql b/CPDQuestions.sql new file mode 100644 index 0000000..6e202be --- /dev/null +++ b/CPDQuestions.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS CPDQuestions ( + QuestionId INT NOT NULL, + QuestionText VARCHAR(4000), + LastModified DATETIME, + DateDeleted DATETIME, + Version BIGINT, + PRIMARY KEY (QuestionId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CPDUserRecords.sql b/CPDUserRecords.sql new file mode 100644 index 0000000..e2d7a68 --- /dev/null +++ b/CPDUserRecords.sql @@ -0,0 +1,17 @@ +CREATE TABLE IF NOT EXISTS CPDUserRecords ( + RecordId INT NOT NULL, + RecordName VARCHAR(256), + State VARCHAR(50) COMMENT 'Published or Draft', + UserId INT, + Category INT, + Method INT, + CreditMinutes INT, + Evidence VARCHAR(4000) COMMENT 'Comma delimited file names', + Type VARCHAR(50) COMMENT 'Structured or Unstructured', + Grade DECIMAL(4, 3), + DateCompleted DATETIME, + LastModified DATETIME, + DateDeleted DATETIME, + Version BIGINT, + PRIMARY KEY (RecordId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CPDUserTargets.sql b/CPDUserTargets.sql new file mode 100644 index 0000000..31dfab0 --- /dev/null +++ b/CPDUserTargets.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS CPDUserTargets ( + PrincipalId INT NOT NULL, + CategoryId INT NOT NULL, + UserId INT NOT NULL, + StructuredMinutes INT, + UnstructuredMinutes INT, + StructuredRecordCount INT, + UnstructuredRecordCount INT, + StartDate DATETIME, + DateDeleted DATETIME, + LastModified DATETIME, + Version BIGINT, + PRIMARY KEY (PrincipalId, CategoryId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/Calendar.sql b/Calendar.sql new file mode 100644 index 0000000..249d592 --- /dev/null +++ b/Calendar.sql @@ -0,0 +1,18 @@ +CREATE TABLE IF NOT EXISTS Calendar ( + ScheduleId BIGINT NOT NULL, + OrgUnitId BIGINT, + UserId BIGINT, + Title VARCHAR(256), + StartDate DATETIME, + EndDate DATETIME, + TimeZoneIdentifier VARCHAR(256), + IsAllDayEvent TINYINT(1), + RecurrenceType VARCHAR(7) COMMENT 'None, Daily, Weekly, Monthly, Yearly', + RecurrenceInterval INT, + CreatedByUserId INT, + LastModified DATETIME, + EventObjectTypeName VARCHAR(200), + ObjectLookupId1 BIGINT, + ObjectLookupId2 BIGINT, + PRIMARY KEY (ScheduleId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ChecklistCategoryDetails.sql b/ChecklistCategoryDetails.sql new file mode 100644 index 0000000..4a28629 --- /dev/null +++ b/ChecklistCategoryDetails.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS ChecklistCategoryDetails ( + CategoryId BIGINT NOT NULL, + ChecklistId BIGINT NOT NULL, + Name VARCHAR(512), + Description VARCHAR(1000), + DescriptionIsHtml TINYINT(1), + SortOrder INT, + LastModifiedUtc DATETIME, + DateDeleted DATETIME, + DeletedBy INT, + Version BIGINT, + PRIMARY KEY (CategoryId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ChecklistCompletions.sql b/ChecklistCompletions.sql new file mode 100644 index 0000000..fe8e919 --- /dev/null +++ b/ChecklistCompletions.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS ChecklistCompletions ( + UserId INT NOT NULL, + ItemId BIGINT NOT NULL, + DateCompleted DATETIME, + LastModified DATETIME, + IsCompleted TINYINT(1), + DateDeleted DATETIME, + DeletedBy INT, + Version BIGINT, + PRIMARY KEY (UserId, ItemId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ChecklistItemDetails.sql b/ChecklistItemDetails.sql new file mode 100644 index 0000000..d75b3c2 --- /dev/null +++ b/ChecklistItemDetails.sql @@ -0,0 +1,16 @@ +CREATE TABLE IF NOT EXISTS ChecklistItemDetails ( + ItemId BIGINT NOT NULL, + CategoryId BIGINT, + Name VARCHAR(512), + Description VARCHAR(1000), + DescriptionIsHtml TINYINT(1), + DueDate DATETIME, + ScheduleId INT, + SortOrder INT, + IsAutoChecked TINYINT(1), + LastModifiedUtc DATETIME, + DateDeleted DATETIME, + DeletedBy INT, + Version BIGINT, + PRIMARY KEY (ItemId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ChecklistObjects.sql b/ChecklistObjects.sql new file mode 100644 index 0000000..af8c73d --- /dev/null +++ b/ChecklistObjects.sql @@ -0,0 +1,15 @@ +CREATE TABLE IF NOT EXISTS ChecklistObjects ( + ChecklistId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + Name VARCHAR(512), + Description VARCHAR(1000), + DescriptionIsHtml TINYINT(1), + SharedUserId INT, + DisplayInNewWindow TINYINT(1), + SortOrder INT, + Version BIGINT, + ResultId INT, + DateDeleted DATETIME, + DeletedBy INT, + PRIMARY KEY (ChecklistId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CompetencyActivities.sql b/CompetencyActivities.sql new file mode 100644 index 0000000..966e070 --- /dev/null +++ b/CompetencyActivities.sql @@ -0,0 +1,20 @@ +CREATE TABLE IF NOT EXISTS CompetencyActivities ( + ActivityId BIGINT NOT NULL, + OrgUnitId INT, + ActivityName VARCHAR(256), + ActivityTypeId INT, + AssessmentType VARCHAR(7), + ObjectLookupId BIGINT, + RubricId BIGINT, + LevelId BIGINT, + RubricCriterionId BIGINT, + AssessmentThresholdCriteria VARCHAR(2), + AssessmentThreshold DECIMAL(19, 9), + IsAutoEval TINYINT(1), + RubricName VARCHAR(256), + RubricLevelRequired VARCHAR(256), + ObjectId BIGINT, + ActivityType VARCHAR(50), + Version BIGINT, + PRIMARY KEY (ActivityId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CompetencyActivityLog.sql b/CompetencyActivityLog.sql new file mode 100644 index 0000000..e1619f1 --- /dev/null +++ b/CompetencyActivityLog.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS CompetencyActivityLog ( + ActivityId BIGINT NOT NULL, + ActivityLogId BIGINT NOT NULL, + LogTypeId INT, + LogTypeName VARCHAR(19), + LogDateTime DATETIME, + ModifiedBy BIGINT, + PRIMARY KEY (ActivityId, ActivityLogId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CompetencyActivityResults.sql b/CompetencyActivityResults.sql new file mode 100644 index 0000000..9c2309d --- /dev/null +++ b/CompetencyActivityResults.sql @@ -0,0 +1,15 @@ +CREATE TABLE IF NOT EXISTS CompetencyActivityResults ( + ActivityId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + LearningObjectId BIGINT NOT NULL, + IsAchieved TINYINT(1), + PercentAchieved DECIMAL(19, 9), + RubricScore DECIMAL(19, 9), + RubricLevelAchieved VARCHAR(256), + RubricId BIGINT, + RubricCriterionId BIGINT, + AchievedDate DATETIME, + Version BIGINT, + PRIMARY KEY (ActivityId, OrgUnitId, UserId, LearningObjectId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CompetencyLog.sql b/CompetencyLog.sql new file mode 100644 index 0000000..949c6e3 --- /dev/null +++ b/CompetencyLog.sql @@ -0,0 +1,16 @@ +CREATE TABLE IF NOT EXISTS CompetencyLog ( + CompetencyLogId BIGINT NOT NULL, + LogTypeId INT, + LogTypeName VARCHAR(19), + ObjectId BIGINT, + ObjectTypeId INT, + ObjectTypeName VARCHAR(18), + ObjectVersion INT, + LogDateTime DATETIME, + ModifiedBy BIGINT, + IndirectObjectId BIGINT, + IndirectObjectTypeName VARCHAR(18), + IndirectObjectTypeId INT, + IndirectObjectVersion INT, + PRIMARY KEY (CompetencyLogId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CompetencyObjects.sql b/CompetencyObjects.sql new file mode 100644 index 0000000..941d90e --- /dev/null +++ b/CompetencyObjects.sql @@ -0,0 +1,15 @@ +CREATE TABLE IF NOT EXISTS CompetencyObjects ( + ObjectId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + Name VARCHAR(256), + Type VARCHAR(256) COMMENT 'Competency or Learning Objective', + ReadyForEvaluation TINYINT(1), + Status VARCHAR(9) COMMENT 'Draft, In Review, Approved, Archived', + Description VARCHAR(1000), + NeedReevaluation TINYINT(1), + ReevaluationIfAchieved TINYINT(1), + ReevaluationIfNotAchieved TINYINT(1), + AdditionalIdentifier VARCHAR(512), + IsHidden TINYINT(1), + PRIMARY KEY (ObjectId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CompetencyStructure.sql b/CompetencyStructure.sql new file mode 100644 index 0000000..017a31a --- /dev/null +++ b/CompetencyStructure.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS CompetencyStructure ( + ObjectId BIGINT NOT NULL, + ParentObjectId BIGINT NOT NULL, + BaseObjectID BIGINT NOT NULL, + Depth INT, + EntryTime INT NOT NULL, + PRIMARY KEY (ObjectId, ParentObjectId, BaseObjectID, EntryTime) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ContentFilesPropertiesLog.sql b/ContentFilesPropertiesLog.sql new file mode 100644 index 0000000..882dae1 --- /dev/null +++ b/ContentFilesPropertiesLog.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS ContentFilesPropertiesLog ( + OrgUnitId INT NOT NULL, + ContentObjectId INT NOT NULL, + Action VARCHAR(10) COMMENT 'Created, Updated, or Deleted', + FilePath VARCHAR(4000) COMMENT 'Truncated from 10k for index limits', + FileName VARCHAR(512), + FileExtension VARCHAR(512), + FileSizeBytes BIGINT, + UploadDate DATETIME, + LastModifiedBy INT, + LastModified DATETIME NOT NULL, + PRIMARY KEY (OrgUnitId, ContentObjectId, LastModified) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ContentObjects.sql b/ContentObjects.sql new file mode 100644 index 0000000..cdd6ba7 --- /dev/null +++ b/ContentObjects.sql @@ -0,0 +1,28 @@ +CREATE TABLE IF NOT EXISTS ContentObjects ( + ContentObjectId INT NOT NULL, + OrgUnitId INT NOT NULL, + Title VARCHAR(150), + ContentObjectType VARCHAR(6) COMMENT 'Topic or Module', + CompletionType VARCHAR(7), + ParentContentObjectId INT, + Location VARCHAR(1024), + StartDate DATETIME, + EndDate DATETIME, + DueDate DATETIME, + ObjectId1 INT COMMENT 'Quick link Object ID (Dropbox, Quiz, etc)', + ObjectId2 INT COMMENT 'Quick link Object ID (Discussion Topic)', + ObjectId3 INT COMMENT 'Quick link Object ID (Discussion Thread)', + LastModified DATETIME, + IsDeleted TINYINT(1), + SortOrder INT, + Depth INT, + ToolId INT, + IsHidden TINYINT(1), + ResultId INT, + DeletedDate DATETIME, + CreatedBy INT, + LastModifiedBy INT, + DeletedBy INT, + AIUtilization INT COMMENT '0=None, 1=Review, 2=Edited, 3=Assisted, 4=Generated', + PRIMARY KEY (ContentObjectId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ContentUserCompletion.sql b/ContentUserCompletion.sql new file mode 100644 index 0000000..fcd1059 --- /dev/null +++ b/ContentUserCompletion.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS ContentUserCompletion ( + ContentObjectId INT NOT NULL, + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + DateCompleted DATETIME, + LastModified DATETIME, + Version BIGINT, + LastModifiedBy INT, + IsDeleted TINYINT(1), + AutomaticDateCompleted DATETIME, + ManualDateCompleted DATETIME, + PRIMARY KEY (ContentObjectId, UserId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/ContentUserProgress.sql b/ContentUserProgress.sql new file mode 100644 index 0000000..ec334cc --- /dev/null +++ b/ContentUserProgress.sql @@ -0,0 +1,16 @@ +CREATE TABLE IF NOT EXISTS ContentUserProgress ( + ContentObjectId INT NOT NULL, + UserId INT NOT NULL, + CompletedDate DATETIME COMMENT 'Currently not in use', + LastVisited DATETIME, + IsRead TINYINT(1), + NumRealVisits INT, + NumFakeVisits INT, + TotalTime BIGINT COMMENT 'Seconds spent in content', + IsVisited TINYINT(1), + IsCurrentBookmark TINYINT(1), + IsSelfAssessComplete TINYINT(1), + LastModified DATETIME, + Version BIGINT, + PRIMARY KEY (ContentObjectId, UserId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CourseAwards.sql b/CourseAwards.sql new file mode 100644 index 0000000..667b368 --- /dev/null +++ b/CourseAwards.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS CourseAwards ( + AssociationId BIGINT NOT NULL, + AwardId BIGINT NOT NULL, + OrgUnitId BIGINT NOT NULL, + DateCreated DATETIME, + HiddenAward TINYINT(1), + ConditionSetId BIGINT, + LastModified DATETIME, + Credits DECIMAL(9, 2), + IsAssociated TINYINT(1), + Version BIGINT, + PRIMARY KEY (AssociationId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CourseCopyLogs.sql b/CourseCopyLogs.sql new file mode 100644 index 0000000..f4cc8bd --- /dev/null +++ b/CourseCopyLogs.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS CourseCopyLogs ( + CopyCourseJobId BIGINT NOT NULL, + SourceOrgUnitId INT NOT NULL, + DestinationOrgUnitId INT NOT NULL, + UserId BIGINT, + Status VARCHAR(128), + StatusId INT COMMENT '1=Created, 5=Copying, 10=Completed, 12=CompletedWithErrors, 13=Cancelled, 15=Failed', + StartDate DATETIME NOT NULL, + EndDate DATETIME, + IsDestinationNew TINYINT(1), + CopyProtectedResources TINYINT(1), + PRIMARY KEY (CopyCourseJobId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CoursePublisherLaunches.sql b/CoursePublisherLaunches.sql new file mode 100644 index 0000000..becac6e --- /dev/null +++ b/CoursePublisherLaunches.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS CoursePublisherLaunches ( + LaunchId VARCHAR(36) NOT NULL, + OrgUnitId INT, + RecipientId VARCHAR(36), + UserId INT, + RoleId INT, + LaunchMethod VARCHAR(256), + ExternalUserId VARCHAR(256), + ExternalLMSType VARCHAR(256), + IsNewUser TINYINT(1), + LastModified DATETIME, + PRIMARY KEY (LaunchId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CoursePublisherRecipients.sql b/CoursePublisherRecipients.sql new file mode 100644 index 0000000..1c6141a --- /dev/null +++ b/CoursePublisherRecipients.sql @@ -0,0 +1,7 @@ +CREATE TABLE IF NOT EXISTS CoursePublisherRecipients ( + RecipientId VARCHAR(36) NOT NULL, + Name VARCHAR(256), + CreatedAt DATETIME, + LastModified DATETIME, + PRIMARY KEY (RecipientId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CreatorPlusPracticesAdoption.sql b/CreatorPlusPracticesAdoption.sql new file mode 100644 index 0000000..f3bc6ec --- /dev/null +++ b/CreatorPlusPracticesAdoption.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS CreatorPlusPracticesAdoption ( + ActivityInstanceId INT NOT NULL, + CreatedById INT, + OrgUnitId INT, + PracticeType VARCHAR(32), + PracticeTitle VARCHAR(255), + ProviderObjectId INT, + CreatedDate DATETIME, + Version BIGINT, + PRIMARY KEY (ActivityInstanceId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/CreatorPlusPracticesEngagement.sql b/CreatorPlusPracticesEngagement.sql new file mode 100644 index 0000000..9170f70 --- /dev/null +++ b/CreatorPlusPracticesEngagement.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS CreatorPlusPracticesEngagement ( + PracticeEngagementId INT NOT NULL, + UserId INT, + OrgUnitId INT, + CompletionStatus VARCHAR(10) COMMENT 'NotStarted or Completed', + ActivityInstanceId INT, + CompletionDate DATETIME, + Version BIGINT, + PRIMARY KEY (PracticeEngagementId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/DiscussionForums.sql b/DiscussionForums.sql new file mode 100644 index 0000000..33d3976 --- /dev/null +++ b/DiscussionForums.sql @@ -0,0 +1,20 @@ +CREATE TABLE IF NOT EXISTS DiscussionForums ( + ForumId BIGINT NOT NULL, + OrgUnitId INT, + Name VARCHAR(400), + Description VARCHAR(1000), + MustPostToParticipate TINYINT(1), + AllowAnon TINYINT(1), + IsHidden TINYINT(1), + RequiresApproval TINYINT(1), + SortOrder INT, + IsDeleted TINYINT(1), + DeletedDate DATETIME, + DeletedByUserId INT, + ResultId INT, + StartDate DATETIME, + StartDateAvailabilityType SMALLINT COMMENT '0=AccessRestricted, 1=SubmissionRestricted, 2=Hidden', + EndDate DATETIME, + EndDateAvailabilityType SMALLINT, + PRIMARY KEY (ForumId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/DiscussionPosts.sql b/DiscussionPosts.sql new file mode 100644 index 0000000..9cb9a59 --- /dev/null +++ b/DiscussionPosts.sql @@ -0,0 +1,23 @@ +CREATE TABLE IF NOT EXISTS DiscussionPosts ( + PostId BIGINT NOT NULL, + TopicId BIGINT NOT NULL, + UserId INT, + OrgUnitId INT, + ThreadId BIGINT, + Thread VARCHAR(400), + IsReply TINYINT(1), + ParentPostId BIGINT, + NumReplies INT, + DatePosted DATETIME NOT NULL, + IsDeleted TINYINT(1), + RatingSum BIGINT, + NumRatings BIGINT, + Score DECIMAL(19, 9), + LastEditDate DATETIME, + SortOrder INT, + Depth INT, + WordCount INT, + AttachmentCount INT, + Version BIGINT, + PRIMARY KEY (PostId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/DiscussionPostsReadStatus.sql b/DiscussionPostsReadStatus.sql new file mode 100644 index 0000000..ad6dca2 --- /dev/null +++ b/DiscussionPostsReadStatus.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS DiscussionPostsReadStatus ( + PostId BIGINT NOT NULL, + UserId INT NOT NULL, + TopicId BIGINT NOT NULL, + IsRead TINYINT(1), + FirstReadDate DATETIME, + LastReadDate DATETIME, + Version BIGINT, + PRIMARY KEY (PostId, UserId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/DiscussionTopics.sql b/DiscussionTopics.sql new file mode 100644 index 0000000..18d7d28 --- /dev/null +++ b/DiscussionTopics.sql @@ -0,0 +1,30 @@ +CREATE TABLE IF NOT EXISTS DiscussionTopics ( + TopicId BIGINT NOT NULL, + ForumId BIGINT, + OrgUnitId INT, + Name VARCHAR(1000), + Description VARCHAR(1000), + MustPostToParticipate TINYINT(1), + AllowAnon TINYINT(1), + IsHidden TINYINT(1), + RequiresApproval TINYINT(1), + LastPostDate DATETIME, + LastPostUserId BIGINT, + NumViews BIGINT, + SortOrder INT, + IsDeleted TINYINT(1), + DeletedDate DATETIME, + DeletedByUserId INT, + GradeItemId INT, + ScoreOutOf FLOAT, + ScoreCalculationMethod VARCHAR(19) COMMENT 'Average, Max, Min, Mode Max, Mode Min, Sum, null', + IncludeNonScoredValues TINYINT(1), + Version BIGINT, + ResultId INT, + StartDate DATETIME, + StartDateAvailabilityType SMALLINT, + EndDate DATETIME, + EndDateAvailabilityType SMALLINT, + AIUtilization INT COMMENT '0=None, 1=AI+Review, 2=AI+Edit, 3=Assisted, 4=AI Generated', + PRIMARY KEY (TopicId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/GradeBookSettings.sql b/GradeBookSettings.sql new file mode 100644 index 0000000..1913e2b --- /dev/null +++ b/GradeBookSettings.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS GradeBookSettings ( + OrgUnitId INT NOT NULL, + GradeSchemeId BIGINT NOT NULL, + GradingSystem VARCHAR(8) COMMENT 'Weighted, Points, or Formula', + UngradedItems VARCHAR(25) COMMENT 'Drop ungraded items or Treat as 0', + IsAdjustedFinalGradeReleased TINYINT(1), + IsCalculatedFinalGradeReleased TINYINT(1), + LastModified DATETIME, + PRIMARY KEY (OrgUnitId, GradeSchemeId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/GradeObjects.sql b/GradeObjects.sql new file mode 100644 index 0000000..b3fe041 --- /dev/null +++ b/GradeObjects.sql @@ -0,0 +1,34 @@ +CREATE TABLE IF NOT EXISTS GradeObjects ( + GradeObjectId INT NOT NULL, + OrgUnitId INT NOT NULL, + ParentGradeObjectId INT COMMENT 'Category ID if applicable', + Name VARCHAR(128), + TypeName VARCHAR(50), + StartDate DATETIME, + EndDate DATETIME, + IsAutoPointed TINYINT(1), + IsFormula TINYINT(1), + IsBonus TINYINT(1), + MaxPoints DECIMAL(19, 9), + CanExceedMaxGrade TINYINT(1), + ExcludeFromFinalGradeCalc TINYINT(1), + GradeSchemeId BIGINT, + Weight DECIMAL(19, 9), + NumLowestGradesToDrop INT, + NumHighestGradesToDrop INT, + WeightDistributionType VARCHAR(8), + CreatedDate DATETIME, + ToolName VARCHAR(50), + AssociatedToolItemId BIGINT, + LastModified DATETIME, + ShortName VARCHAR(128), + GradeObjectTypeId INT COMMENT '1=Numeric, 2=P/F, 3=SelectBox, 4=Text, 5=Calc, 6=Formula, 7=Final Calc, 8=Final Adj, 9=Category', + SortOrder INT, + IsDeleted TINYINT(1), + DeletedDate DATETIME, + DeletedByUserId INT, + ResultId INT, + ToolId INT, + Version INT, + PRIMARY KEY (GradeObjectId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/GradeResults.sql b/GradeResults.sql new file mode 100644 index 0000000..afafb45 --- /dev/null +++ b/GradeResults.sql @@ -0,0 +1,20 @@ +CREATE TABLE IF NOT EXISTS GradeResults ( + GradeObjectId INT NOT NULL, + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + PointsNumerator DECIMAL(19, 9), + PointsDenominator DECIMAL(19, 9), + WeightedNumerator DECIMAL(19, 9), + WeightedDenominator DECIMAL(19, 9), + IsReleased TINYINT(1), + IsDropped TINYINT(1), + LastModified DATETIME, + LastModifiedBy INT, + Comments VARCHAR(1000), + PrivateComments VARCHAR(1000), + GradeText VARCHAR(50), + GradeReleasedDate DATETIME, + Version BIGINT, + IsDeleted TINYINT(1), + PRIMARY KEY (GradeObjectId, OrgUnitId, UserId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/GradeSchemeRanges.sql b/GradeSchemeRanges.sql new file mode 100644 index 0000000..15b3bfd --- /dev/null +++ b/GradeSchemeRanges.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS GradeSchemeRanges ( + GradeSchemeRangeId BIGINT NOT NULL, + GradeSchemeId BIGINT NOT NULL, + SymbolString VARCHAR(100) COMMENT 'A, B, Pass, etc.', + AssignedValue DECIMAL(19, 9), + RangeStart DECIMAL(19, 9), + IsDeleted TINYINT(1), + Version BIGINT, + PRIMARY KEY (GradeSchemeRangeId, GradeSchemeId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/GradeSchemes.sql b/GradeSchemes.sql new file mode 100644 index 0000000..ef19db1 --- /dev/null +++ b/GradeSchemes.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS GradeSchemes ( + GradeSchemeId BIGINT NOT NULL, + OrgUnitId INT, + SchemeName VARCHAR(128), + DeletedDate DATETIME, + Version BIGINT, + PRIMARY KEY (GradeSchemeId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/IntelligentAgentObjects.sql b/IntelligentAgentObjects.sql new file mode 100644 index 0000000..bc9c99a --- /dev/null +++ b/IntelligentAgentObjects.sql @@ -0,0 +1,26 @@ +CREATE TABLE IF NOT EXISTS IntelligentAgentObjects ( + AgentId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + AgentName VARCHAR(128), + Description VARCHAR(1000), + Enabled TINYINT(1), + SpecificRoles VARCHAR(1000) COMMENT 'Array of roles or null for all', + LoginConditionEnabled TINYINT(1), + LoginConditionThreshold INT, + LoginConditionType VARCHAR(14), + AccessConditionEnabled TINYINT(1), + AccessConditionThreshold INT, + AccessConditionType VARCHAR(20), + ResultId BIGINT, + RepeatType VARCHAR(10), + EmailWhenSatisfied TINYINT(1), + EnableSchedule TINYINT(1), + ScheduleType VARCHAR(8), + ScheduleRepeatsEvery INT, + StartDate DATETIME, + EndDate DATETIME, + LastModified DATETIME, + LastModifiedBy INT, + IsDeleted TINYINT(1), + PRIMARY KEY (AgentId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/IntelligentAgentRunLog.sql b/IntelligentAgentRunLog.sql new file mode 100644 index 0000000..1b3a752 --- /dev/null +++ b/IntelligentAgentRunLog.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS IntelligentAgentRunLog ( + AgentRunId BIGINT NOT NULL, + AgentId BIGINT NOT NULL, + IsPracticeRun TINYINT(1), + IsRunNow TINYINT(1), + NumUsers INT, + NumUsersWithErrors INT, + NumUsersWithInfos INT, + NumUsersWithWarnings INT, + RunUserId INT COMMENT '0 for system', + RunDate DATETIME NOT NULL, + PRIMARY KEY (AgentRunId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/IntelligentAgentRunUsers.sql b/IntelligentAgentRunUsers.sql new file mode 100644 index 0000000..d4c3cb7 --- /dev/null +++ b/IntelligentAgentRunUsers.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS IntelligentAgentRunUsers ( + AgentId BIGINT NOT NULL, + AgentRunId BIGINT NOT NULL, + UserId INT NOT NULL, + OrgUnitId INT NOT NULL, + ActionTypeName VARCHAR(50), + ActionHasError TINYINT(1), + ActionHasInfo TINYINT(1), + ActionHasWarning TINYINT(1), + ShouldRetry TINYINT(1), + PRIMARY KEY (AgentId, AgentRunId, UserId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/JITProvisionedUsersLog.sql b/JITProvisionedUsersLog.sql new file mode 100644 index 0000000..ca25931 --- /dev/null +++ b/JITProvisionedUsersLog.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS JITProvisionedUsersLog ( + UserId INT NOT NULL, + MappingField VARCHAR(32) COMMENT 'Username, Email Address, etc.', + MappingFieldValue VARCHAR(270), + ProviderType VARCHAR(32) COMMENT 'e.g., SAML', + ProviderId VARCHAR(1024), + RoleId INT, + Timestamp DATETIME NOT NULL, + Action VARCHAR(16) COMMENT 'Created or Updated', + PRIMARY KEY (UserId, Timestamp) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/LTIAdvantageDeploymentAudit.sql b/LTIAdvantageDeploymentAudit.sql new file mode 100644 index 0000000..4f52828 --- /dev/null +++ b/LTIAdvantageDeploymentAudit.sql @@ -0,0 +1,34 @@ +CREATE TABLE IF NOT EXISTS LTIAdvantageDeploymentAudit ( + Action VARCHAR(10) COMMENT 'Deployed, Updated, or Deleted', + DeploymentID VARCHAR(36) NOT NULL, + ClientID VARCHAR(36), + DeploymentName VARCHAR(200), + IsDeploymentEnabled TINYINT(1), + HasAssignmentsAndGrades TINYINT(1), + HasDeepLinking TINYINT(1), + HasNamesAndRoles TINYINT(1), + HasSubmissionReview TINYINT(1), + HasActivityItemProfile TINYINT(1), + HasPlatformNotificationService TINYINT(1), + HasContextCopy TINYINT(1), + ModifiedBy BIGINT, + Anonymous TINYINT(1), + PreProvisioningEnabled TINYINT(1), + SendOrgUnitInfo TINYINT(1), + SendUserFirstName TINYINT(1), + SendUserLastName TINYINT(1), + SendUserEmail TINYINT(1), + SendBrightspaceUserID TINYINT(1), + SendBrightspaceUsername TINYINT(1), + SendBrightspaceOrgDefinedId TINYINT(1), + SendLinkTitle TINYINT(1), + SendLinkDescription TINYINT(1), + OpenAsExternal TINYINT(1), + AutoMigrateLinks TINYINT(1), + IsSharedToManyOrgUnits TINYINT(1), + AutoCreateGrades TINYINT(1), + IncludeInFinalGrade TINYINT(1), + Timestamp DATETIME NOT NULL, + HasAssetProcessor TINYINT(1), + PRIMARY KEY (DeploymentID, Timestamp) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/LTIAdvantageRegistrationAudit.sql b/LTIAdvantageRegistrationAudit.sql new file mode 100644 index 0000000..553c09c --- /dev/null +++ b/LTIAdvantageRegistrationAudit.sql @@ -0,0 +1,23 @@ +CREATE TABLE IF NOT EXISTS LTIAdvantageRegistrationAudit ( + Action VARCHAR(10) COMMENT 'Registered, Updated, or Deleted', + ClientId VARCHAR(255) NOT NULL, + ToolName VARCHAR(200), + Domain VARCHAR(2083), + RedirectURLs TEXT, + KeysetURL VARCHAR(255), + LoginURL VARCHAR(255), + LTIVersion VARCHAR(12), + IsRegistrationEnabled TINYINT(1), + SendInstitutionRole TINYINT(1), + TargetLinkURI VARCHAR(255), + ModifiedBy BIGINT, + HasAssignmentAndGradeServices TINYINT(1), + HasSubmissionReview TINYINT(1), + HasDeepLinking TINYINT(1), + HasNamesAndRoleProvisioningServices TINYINT(1), + HasActivityItemProfile TINYINT(1), + HasPlatformNotificationService TINYINT(1), + Timestamp DATETIME NOT NULL, + HasAssetProcessor TINYINT(1), + PRIMARY KEY (ClientId, Timestamp) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/LTILaunches.sql b/LTILaunches.sql new file mode 100644 index 0000000..aadb89d --- /dev/null +++ b/LTILaunches.sql @@ -0,0 +1,19 @@ +CREATE TABLE IF NOT EXISTS LTILaunches ( + LTILaunchId CHAR(36) NOT NULL, + UserId INT, + IMSRoleNames TEXT, + ImpersonatingUserId BIGINT, + ImpersonatingUserIMSRoleNames TEXT, + LaunchDate DATETIME NOT NULL, + OrgUnitId BIGINT, + LTILinkId BIGINT, + DeploymentId CHAR(36), + ClientId CHAR(36), + ToolProviderId VARCHAR(300), + ContentTopicId BIGINT, + ParentModuleId BIGINT, + Placement VARCHAR(10), + MessageVersion VARCHAR(10), + RequestType VARCHAR(30), + PRIMARY KEY (LTILaunchId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/LTILinkMigrationAudit.sql b/LTILinkMigrationAudit.sql new file mode 100644 index 0000000..66502b2 --- /dev/null +++ b/LTILinkMigrationAudit.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS LTILinkMigrationAudit ( + LTIMigrationId CHAR(36) NOT NULL, + UserId BIGINT, + MigrationDate DATETIME NOT NULL, + OrgUnitId BIGINT, + LinkId BIGINT, + LinkURL VARCHAR(2000), + LinkName VARCHAR(200), + PRIMARY KEY (LTIMigrationId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/LTILinks.sql b/LTILinks.sql new file mode 100644 index 0000000..b3be6a5 --- /dev/null +++ b/LTILinks.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS LTILinks ( + LtiLinkId BIGINT NOT NULL, + OrgUnitId INT NOT NULL, + Title VARCHAR(200), + LinkType INT COMMENT '0=Basic, 1=Deep Linking', + LTIVersion VARCHAR(12), + SendBrightspaceUserId TINYINT(1), + Anonymous TINYINT(1), + Shared TINYINT(1), + PRIMARY KEY (LtiLinkId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/LocalAuthenticationSecurityLog.sql b/LocalAuthenticationSecurityLog.sql new file mode 100644 index 0000000..9f10874 --- /dev/null +++ b/LocalAuthenticationSecurityLog.sql @@ -0,0 +1,7 @@ +CREATE TABLE IF NOT EXISTS LocalAuthenticationSecurityLog ( + UserId INT NOT NULL, + Action VARCHAR(70) NOT NULL COMMENT 'Authorized, AuthorizationRemoved, TwoFactorAuthEnabled, or TwoFactorAuthDisabled', + ModifiedBy INT NOT NULL, + ModifiedDate DATETIME NOT NULL, + PRIMARY KEY (UserId, Action, ModifiedBy, ModifiedDate) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/MediaConsumptionLog.sql b/MediaConsumptionLog.sql new file mode 100644 index 0000000..78e8eda --- /dev/null +++ b/MediaConsumptionLog.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS MediaConsumptionLog ( + LogId VARCHAR(36) NOT NULL, + UserId INT, + ContentId VARCHAR(36), + RevisionId VARCHAR(36), + ContentType VARCHAR(5) COMMENT 'Audio or Video', + ClientApp VARCHAR(32), + DateConsumed DATETIME, + DurationPercentageWatched INT COMMENT '0 to 100', + PRIMARY KEY (LogId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/MediaObjects.sql b/MediaObjects.sql new file mode 100644 index 0000000..b610e5a --- /dev/null +++ b/MediaObjects.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS MediaObjects ( + ContentId VARCHAR(36) NOT NULL, + Title VARCHAR(1000), + RevisionCount INT, + OwnerId INT, + LastModified DATETIME, + PRIMARY KEY (ContentId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/OrganizationalUnitAncestors.sql b/OrganizationalUnitAncestors.sql new file mode 100644 index 0000000..e3f394d --- /dev/null +++ b/OrganizationalUnitAncestors.sql @@ -0,0 +1,7 @@ +CREATE TABLE IF NOT EXISTS OrganizationalUnitAncestors ( + OrgUnitId INT NOT NULL, + AncestorOrgUnitId INT NOT NULL, + PRIMARY KEY (OrgUnitId, AncestorOrgUnitId), + INDEX idx_ancestor (AncestorOrgUnitId), + CONSTRAINT fk_oua_orgunit FOREIGN KEY (OrgUnitId) REFERENCES OrganizationalUnits(OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OrganizationalUnitDescendants.sql b/OrganizationalUnitDescendants.sql new file mode 100644 index 0000000..7fa0a99 --- /dev/null +++ b/OrganizationalUnitDescendants.sql @@ -0,0 +1,7 @@ +CREATE TABLE IF NOT EXISTS OrganizationalUnitDescendants ( + OrgUnitId INT NOT NULL, + DescendantOrgUnitId INT NOT NULL, + PRIMARY KEY (OrgUnitId, DescendantOrgUnitId), + INDEX idx_descendant (DescendantOrgUnitId), + CONSTRAINT fk_oud_orgunit FOREIGN KEY (OrgUnitId) REFERENCES OrganizationalUnits(OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OrganizationalUnitParents.sql b/OrganizationalUnitParents.sql new file mode 100644 index 0000000..982e2fc --- /dev/null +++ b/OrganizationalUnitParents.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS OrganizationalUnitParents ( + OrgUnitId INT NOT NULL, + ParentOrgUnitId INT NOT NULL, + RowVersion BIGINT, + DateDeleted DATETIME(6), + PRIMARY KEY (OrgUnitId, ParentOrgUnitId), + INDEX idx_parent (ParentOrgUnitId), + CONSTRAINT fk_oup_orgunit FOREIGN KEY (OrgUnitId) REFERENCES OrganizationalUnits(OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OrganizationalUnitRecentAccess.sql b/OrganizationalUnitRecentAccess.sql new file mode 100644 index 0000000..abedc19 --- /dev/null +++ b/OrganizationalUnitRecentAccess.sql @@ -0,0 +1,7 @@ +CREATE TABLE IF NOT EXISTS OrganizationalUnitRecentAccess ( + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + LastAccessedDate DATETIME(6) NOT NULL, + PRIMARY KEY (OrgUnitId, UserId), + CONSTRAINT fk_oura_orgunit FOREIGN KEY (OrgUnitId) REFERENCES OrganizationalUnits(OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OrganizationalUnits.sql b/OrganizationalUnits.sql new file mode 100644 index 0000000..f864949 --- /dev/null +++ b/OrganizationalUnits.sql @@ -0,0 +1,17 @@ +CREATE TABLE IF NOT EXISTS OrganizationalUnits ( + OrgUnitId INT NOT NULL, + Organization VARCHAR(50), + Type VARCHAR(50), + Name VARCHAR(128), + Code VARCHAR(50), + StartDate DATETIME(6), + EndDate DATETIME(6), + IsActive TINYINT(1), + CreatedDate DATETIME(6), + IsDeleted TINYINT(1), + DeletedDate DATETIME(6), + RecycledDate DATETIME(6), + Version BIGINT, + OrgUnitTypeId INT, + PRIMARY KEY (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OutcomeDetails.sql b/OutcomeDetails.sql new file mode 100644 index 0000000..3089046 --- /dev/null +++ b/OutcomeDetails.sql @@ -0,0 +1,16 @@ +CREATE TABLE IF NOT EXISTS OutcomeDetails ( + OutcomeId VARCHAR(36) NOT NULL, + RegistryId VARCHAR(36) NOT NULL, + SourceId VARCHAR(50), + ParentOutcomeId VARCHAR(36), + Code VARCHAR(50), + Description TEXT, + IsDeleted TINYINT(1), + CreatedBy INT, + CreatedDate DATETIME(6), + ModifiedBy INT, + ModifiedDate DATETIME(6), + Version BIGINT, + PRIMARY KEY (OutcomeId), + INDEX idx_registry (RegistryId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OutcomesAlignedToToolObjects.sql b/OutcomesAlignedToToolObjects.sql new file mode 100644 index 0000000..5415e4b --- /dev/null +++ b/OutcomesAlignedToToolObjects.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS OutcomesAlignedToToolObjects ( + AlignmentId VARCHAR(36) NOT NULL, + OutcomeId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + AlignedObjectType INT NOT NULL, + AlignedObjectId VARCHAR(50) NOT NULL, + IsDeleted TINYINT(1), + Version BIGINT, + PRIMARY KEY (AlignmentId), + INDEX idx_outcome (OutcomeId), + INDEX idx_tool_object (AlignedObjectType, AlignedObjectId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OutcomesAssessedCheckpoints.sql b/OutcomesAssessedCheckpoints.sql new file mode 100644 index 0000000..6dbbb0e --- /dev/null +++ b/OutcomesAssessedCheckpoints.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS OutcomesAssessedCheckpoints ( + CheckpointId VARCHAR(36) NOT NULL, + DemonstrationId VARCHAR(36) NOT NULL, + OutcomeId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + EvaluatorId INT, + ScaleLevelId VARCHAR(36), + AssessedDate DATETIME(6), + CalculationMethod INT, + PRIMARY KEY (CheckpointId, DemonstrationId), + INDEX idx_outcome_user (OutcomeId, UserId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OutcomesScaleDefinition.sql b/OutcomesScaleDefinition.sql new file mode 100644 index 0000000..fc522bf --- /dev/null +++ b/OutcomesScaleDefinition.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS OutcomesScaleDefinition ( + ScaleId VARCHAR(36) NOT NULL, + ScaleLevelId VARCHAR(36) NOT NULL, + Name VARCHAR(128), + Color VARCHAR(7), + SortOrder INT, + IsAchievement TINYINT(1), + PRIMARY KEY (ScaleId, ScaleLevelId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OutcomesSetCourse.sql b/OutcomesSetCourse.sql new file mode 100644 index 0000000..ac1cd5d --- /dev/null +++ b/OutcomesSetCourse.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS OutcomesSetCourse ( + OutcomeSetId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + RegistryId VARCHAR(36), + Name VARCHAR(255), + Description TEXT, + CreatedDate DATETIME(6), + IsDeleted TINYINT(1), + PRIMARY KEY (OutcomeSetId), + INDEX idx_course (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/OutcomesSetOrg.sql b/OutcomesSetOrg.sql new file mode 100644 index 0000000..fafa2a6 --- /dev/null +++ b/OutcomesSetOrg.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS OutcomesSetOrg ( + OutcomeSetId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + RegistryId VARCHAR(36), + Name VARCHAR(255), + Description TEXT, + CreatedDate DATETIME(6), + IsDeleted TINYINT(1), + PRIMARY KEY (OutcomeSetId), + INDEX idx_orgunit (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/PortfolioAssessments.sql b/PortfolioAssessments.sql new file mode 100644 index 0000000..5f3a754 --- /dev/null +++ b/PortfolioAssessments.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS PortfolioAssessments ( + AssessmentId VARCHAR(36) NOT NULL, + PortfolioItemId VARCHAR(36) NOT NULL, + AssessorId INT NOT NULL, + Score DECIMAL(10,2), + Feedback TEXT, + AssessmentDate DATETIME(6), + IsDraft TINYINT(1), + PRIMARY KEY (AssessmentId), + CONSTRAINT fk_pa_item FOREIGN KEY (PortfolioItemId) REFERENCES PortfolioItems(PortfolioItemId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/PortfolioCategories.sql b/PortfolioCategories.sql new file mode 100644 index 0000000..3e6c16f --- /dev/null +++ b/PortfolioCategories.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS PortfolioCategories ( + CategoryId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + Name VARCHAR(128) NOT NULL, + Description TEXT, + CreatedDate DATETIME(6), + IsDeleted TINYINT(1), + PRIMARY KEY (CategoryId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/PortfolioEvidenceLog.sql b/PortfolioEvidenceLog.sql new file mode 100644 index 0000000..c263487 --- /dev/null +++ b/PortfolioEvidenceLog.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS PortfolioEvidenceLog ( + EvidenceLogId VARCHAR(36) NOT NULL, + PortfolioItemId VARCHAR(36) NOT NULL, + Action VARCHAR(50), + ActionDate DATETIME(6), + ActorId INT, + Details TEXT, + PRIMARY KEY (EvidenceLogId), + CONSTRAINT fk_pel_item FOREIGN KEY (PortfolioItemId) REFERENCES PortfolioItems(PortfolioItemId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/PortfolioItemCategories.sql b/PortfolioItemCategories.sql new file mode 100644 index 0000000..f86b6a6 --- /dev/null +++ b/PortfolioItemCategories.sql @@ -0,0 +1,7 @@ +CREATE TABLE IF NOT EXISTS PortfolioItemCategories ( + PortfolioItemId VARCHAR(36) NOT NULL, + CategoryId VARCHAR(36) NOT NULL, + PRIMARY KEY (PortfolioItemId, CategoryId), + CONSTRAINT fk_pic_item FOREIGN KEY (PortfolioItemId) REFERENCES PortfolioItems(PortfolioItemId), + CONSTRAINT fk_pic_cat FOREIGN KEY (CategoryId) REFERENCES PortfolioCategories(CategoryId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/PortfolioItems.sql b/PortfolioItems.sql new file mode 100644 index 0000000..06872ca --- /dev/null +++ b/PortfolioItems.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS PortfolioItems ( + PortfolioItemId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + Title VARCHAR(255), + Description TEXT, + EvidenceType VARCHAR(50), + CreatedDate DATETIME(6), + ModifiedDate DATETIME(6), + IsDeleted TINYINT(1), + Version BIGINT, + PRIMARY KEY (PortfolioItemId), + INDEX idx_user_org (UserId, OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/QuestionAnswers.sql b/QuestionAnswers.sql new file mode 100644 index 0000000..e72625e --- /dev/null +++ b/QuestionAnswers.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS QuestionAnswers ( + AnswerId VARCHAR(36) NOT NULL, + QuestionId VARCHAR(36) NOT NULL, + AnswerText TEXT, + IsCorrect TINYINT(1), + SortOrder INT, + Weight DECIMAL(5,2), + PRIMARY KEY (AnswerId), + CONSTRAINT fk_qa_question FOREIGN KEY (QuestionId) REFERENCES QuestionLibrary(QuestionId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/QuestionLibrary.sql b/QuestionLibrary.sql new file mode 100644 index 0000000..a9d47d1 --- /dev/null +++ b/QuestionLibrary.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS QuestionLibrary ( + QuestionId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + ParentQuestionId VARCHAR(36), + QuestionType VARCHAR(50), + QuestionText TEXT, + Points DECIMAL(10,2), + IsDeleted TINYINT(1), + Version BIGINT, + CreatedDate DATETIME(6), + ModifiedDate DATETIME(6), + PRIMARY KEY (QuestionId), + INDEX idx_orgunit (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/QuestionStatistics.sql b/QuestionStatistics.sql new file mode 100644 index 0000000..3c31860 --- /dev/null +++ b/QuestionStatistics.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS QuestionStatistics ( + QuestionId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + AttemptCount INT, + AverageScore DECIMAL(10,2), + StandardDeviation DECIMAL(10,2), + DiscriminationIndex DECIMAL(10,2), + PRIMARY KEY (QuestionId, OrgUnitId), + CONSTRAINT fk_qs_question FOREIGN KEY (QuestionId) REFERENCES QuestionLibrary(QuestionId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/QuestionUserResponses.sql b/QuestionUserResponses.sql new file mode 100644 index 0000000..586989a --- /dev/null +++ b/QuestionUserResponses.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS QuestionUserResponses ( + ResponseId VARCHAR(36) NOT NULL, + QuestionId VARCHAR(36) NOT NULL, + UserId INT NOT NULL, + AttemptId INT NOT NULL, + AnswerId VARCHAR(36), + ResponseText TEXT, + Score DECIMAL(10,2), + ResponseDate DATETIME(6), + PRIMARY KEY (ResponseId), + INDEX idx_user_question (UserId, QuestionId), + CONSTRAINT fk_qur_question FOREIGN KEY (QuestionId) REFERENCES QuestionLibrary(QuestionId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/QuizAttempts.sql b/QuizAttempts.sql new file mode 100644 index 0000000..e2dd51b --- /dev/null +++ b/QuizAttempts.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS QuizAttempts ( + AttemptId INT NOT NULL, + QuizId INT NOT NULL, + UserId INT NOT NULL, + AttemptNumber INT, + Score DECIMAL(10,2), + TimeLimit INT, + TimeSpent INT, + DateStarted DATETIME(6), + DateCompleted DATETIME(6), + IsDeleted TINYINT(1), + PRIMARY KEY (AttemptId), + CONSTRAINT fk_qa_quiz FOREIGN KEY (QuizId) REFERENCES Quizzes(QuizId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/QuizQuestionAnswers.sql b/QuizQuestionAnswers.sql new file mode 100644 index 0000000..d555b80 --- /dev/null +++ b/QuizQuestionAnswers.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS QuizQuestionAnswers ( + QuestionAttemptId INT NOT NULL, + AnswerId VARCHAR(36) NOT NULL, + AnswerText TEXT, + IsCorrect TINYINT(1), + PRIMARY KEY (QuestionAttemptId, AnswerId), + CONSTRAINT fk_qqa_ans_attempt FOREIGN KEY (QuestionAttemptId) REFERENCES QuizQuestionAttempts(QuestionAttemptId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/QuizQuestionAttempts.sql b/QuizQuestionAttempts.sql new file mode 100644 index 0000000..c276961 --- /dev/null +++ b/QuizQuestionAttempts.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS QuizQuestionAttempts ( + QuestionAttemptId INT NOT NULL, + AttemptId INT NOT NULL, + QuestionId VARCHAR(36) NOT NULL, + Score DECIMAL(10,2), + IsDeleted TINYINT(1), + PRIMARY KEY (QuestionAttemptId), + CONSTRAINT fk_qqa_attempt FOREIGN KEY (AttemptId) REFERENCES QuizAttempts(AttemptId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/QuizSubmissionLog.sql b/QuizSubmissionLog.sql new file mode 100644 index 0000000..88a3109 --- /dev/null +++ b/QuizSubmissionLog.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS QuizSubmissionLog ( + LogId INT NOT NULL AUTO_INCREMENT, + AttemptId INT NOT NULL, + Action VARCHAR(50), + ActionDate DATETIME(6), + IPAddress VARCHAR(45), + PRIMARY KEY (LogId), + CONSTRAINT fk_qsl_attempt FOREIGN KEY (AttemptId) REFERENCES QuizAttempts(AttemptId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/Quizzes.sql b/Quizzes.sql new file mode 100644 index 0000000..6f9389d --- /dev/null +++ b/Quizzes.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS Quizzes ( + QuizId INT NOT NULL, + OrgUnitId INT NOT NULL, + Name VARCHAR(255) NOT NULL, + IsActive TINYINT(1), + SortOrder INT, + IsAutoPublish TINYINT(1), + IsDeleted TINYINT(1), + CreatedDate DATETIME(6), + ModifiedDate DATETIME(6), + Version BIGINT, + PRIMARY KEY (QuizId), + INDEX idx_quizzes_org (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/ReleaseConditionObjects.sql b/ReleaseConditionObjects.sql new file mode 100644 index 0000000..4693606 --- /dev/null +++ b/ReleaseConditionObjects.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS ReleaseConditionObjects ( + ReleaseConditionId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + ToolType VARCHAR(50), + TriggerType VARCHAR(50), + ConditionType VARCHAR(50), + Description TEXT, + Version BIGINT, + IsDeleted TINYINT(1), + PRIMARY KEY (ReleaseConditionId), + INDEX idx_rco_org (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/ReleaseConditionResult.sql b/ReleaseConditionResult.sql new file mode 100644 index 0000000..94fee04 --- /dev/null +++ b/ReleaseConditionResult.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS ReleaseConditionResult ( + ReleaseConditionId VARCHAR(36) NOT NULL, + UserId INT NOT NULL, + OrgUnitId INT NOT NULL, + IsMet TINYINT(1), + DateMet DATETIME(6), + PRIMARY KEY (ReleaseConditionId, UserId), + CONSTRAINT fk_rcr_condition FOREIGN KEY (ReleaseConditionId) REFERENCES ReleaseConditionObjects(ReleaseConditionId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/ReleaseConditionUserResult.sql b/ReleaseConditionUserResult.sql new file mode 100644 index 0000000..06e6ae3 --- /dev/null +++ b/ReleaseConditionUserResult.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS ReleaseConditionUserResult ( + ReleaseConditionId VARCHAR(36) NOT NULL, + UserId INT NOT NULL, + Result TINYINT(1), + LastModified DATETIME(6), + PRIMARY KEY (ReleaseConditionId, UserId), + CONSTRAINT fk_rcur_condition FOREIGN KEY (ReleaseConditionId) REFERENCES ReleaseConditionObjects(ReleaseConditionId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/ReofferCourseDetails.sql b/ReofferCourseDetails.sql new file mode 100644 index 0000000..32a0ced --- /dev/null +++ b/ReofferCourseDetails.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS ReofferCourseDetails ( + RequestId VARCHAR(36) NOT NULL, + NewOrgUnitId INT, + NewOrgUnitName VARCHAR(255), + NewOrgUnitCode VARCHAR(50), + SourceOrgUnitId INT NOT NULL, + Status VARCHAR(50), + ErrorMessage TEXT, + CompletionDate DATETIME(6), + PRIMARY KEY (RequestId), + CONSTRAINT fk_rcd_request FOREIGN KEY (RequestId) REFERENCES ReofferCourseRequest(RequestId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/ReofferCourseRequest.sql b/ReofferCourseRequest.sql new file mode 100644 index 0000000..7e32e99 --- /dev/null +++ b/ReofferCourseRequest.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS ReofferCourseRequest ( + RequestId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + SourceOrgUnitId INT NOT NULL, + RequestorId INT NOT NULL, + RequestDate DATETIME(6), + Status VARCHAR(50), + JobId VARCHAR(36), + PRIMARY KEY (RequestId), + INDEX idx_rcr_org (OrgUnitId), + INDEX idx_rcr_source (SourceOrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/RoleAssignments.sql b/RoleAssignments.sql new file mode 100644 index 0000000..c986c18 --- /dev/null +++ b/RoleAssignments.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS RoleAssignments ( + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + RoleId INT NOT NULL, + IsCascading TINYINT(1), + Version BIGINT, + PRIMARY KEY (OrgUnitId, UserId, RoleId), + INDEX idx_ra_user (UserId), + INDEX idx_ra_role (RoleId), + CONSTRAINT fk_ra_role FOREIGN KEY (RoleId) REFERENCES Roles(RoleId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/Roles.sql b/Roles.sql new file mode 100644 index 0000000..d0ade27 --- /dev/null +++ b/Roles.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS Roles ( + RoleId INT NOT NULL, + RoleName VARCHAR(128) NOT NULL, + RoleCode VARCHAR(50), + Description TEXT, + IsActive TINYINT(1), + IsCascading TINYINT(1), + Version BIGINT, + PRIMARY KEY (RoleId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/RubricAssessments.sql b/RubricAssessments.sql new file mode 100644 index 0000000..d7ee9ae --- /dev/null +++ b/RubricAssessments.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS RubricAssessments ( + AssessmentId VARCHAR(36) NOT NULL, + RubricId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + EvaluatorId INT, + Score DECIMAL(10,2), + TotalScore DECIMAL(10,2), + AssessmentDate DATETIME(6), + IsDraft TINYINT(1), + PRIMARY KEY (AssessmentId), + CONSTRAINT fk_ra_rubric_main FOREIGN KEY (RubricId) REFERENCES Rubrics(RubricId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/RubricCriteria.sql b/RubricCriteria.sql new file mode 100644 index 0000000..2171440 --- /dev/null +++ b/RubricCriteria.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS RubricCriteria ( + CriteriaId VARCHAR(36) NOT NULL, + RubricId VARCHAR(36) NOT NULL, + ParentCriteriaId VARCHAR(36), + Name VARCHAR(128), + Description TEXT, + SortOrder INT, + PRIMARY KEY (CriteriaId), + CONSTRAINT fk_rc_rubric FOREIGN KEY (RubricId) REFERENCES Rubrics(RubricId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/RubricCriteriaAssessments.sql b/RubricCriteriaAssessments.sql new file mode 100644 index 0000000..d739cd8 --- /dev/null +++ b/RubricCriteriaAssessments.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS RubricCriteriaAssessments ( + AssessmentId VARCHAR(36) NOT NULL, + CriteriaId VARCHAR(36) NOT NULL, + LevelId VARCHAR(36), + Score DECIMAL(10,2), + Feedback TEXT, + PRIMARY KEY (AssessmentId, CriteriaId), + CONSTRAINT fk_rca_assessment FOREIGN KEY (AssessmentId) REFERENCES RubricAssessments(AssessmentId), + CONSTRAINT fk_rca_criteria FOREIGN KEY (CriteriaId) REFERENCES RubricCriteria(CriteriaId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/RubricCriteriaLevels.sql b/RubricCriteriaLevels.sql new file mode 100644 index 0000000..ca9595a --- /dev/null +++ b/RubricCriteriaLevels.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS RubricCriteriaLevels ( + CriteriaId VARCHAR(36) NOT NULL, + LevelId VARCHAR(36) NOT NULL, + Description TEXT, + Feedback TEXT, + PRIMARY KEY (CriteriaId, LevelId), + CONSTRAINT fk_rcl_criteria FOREIGN KEY (CriteriaId) REFERENCES RubricCriteria(CriteriaId), + CONSTRAINT fk_rcl_level FOREIGN KEY (LevelId) REFERENCES RubricLevels(LevelId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/RubricLevels.sql b/RubricLevels.sql new file mode 100644 index 0000000..db3f527 --- /dev/null +++ b/RubricLevels.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS RubricLevels ( + LevelId VARCHAR(36) NOT NULL, + RubricId VARCHAR(36) NOT NULL, + Name VARCHAR(128), + Description TEXT, + Value DECIMAL(10,2), + SortOrder INT, + PRIMARY KEY (LevelId), + CONSTRAINT fk_rl_rubric FOREIGN KEY (RubricId) REFERENCES Rubrics(RubricId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/Rubrics.sql b/Rubrics.sql new file mode 100644 index 0000000..4112881 --- /dev/null +++ b/Rubrics.sql @@ -0,0 +1,15 @@ +CREATE TABLE IF NOT EXISTS Rubrics ( + RubricId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + Name VARCHAR(255) NOT NULL, + Description TEXT, + RubricType VARCHAR(50), + ScoringMethod VARCHAR(50), + Status VARCHAR(50), + IsDeleted TINYINT(1), + Version BIGINT, + CreatedDate DATETIME(6), + ModifiedDate DATETIME(6), + PRIMARY KEY (RubricId), + INDEX idx_rubrics_org (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SCORMActivities.sql b/SCORMActivities.sql new file mode 100644 index 0000000..59c55b9 --- /dev/null +++ b/SCORMActivities.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS SCORMActivities ( + ActivityId VARCHAR(36) NOT NULL, + ScormObjectId VARCHAR(36) NOT NULL, + Title VARCHAR(255), + ExternalId VARCHAR(255), + PRIMARY KEY (ActivityId), + CONSTRAINT fk_sa_object FOREIGN KEY (ScormObjectId) REFERENCES SCORMObjects(ScormObjectId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SCORMActivityAttempts.sql b/SCORMActivityAttempts.sql new file mode 100644 index 0000000..ccf7b8f --- /dev/null +++ b/SCORMActivityAttempts.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS SCORMActivityAttempts ( + AttemptId VARCHAR(36) NOT NULL, + VisitId VARCHAR(36) NOT NULL, + ActivityId VARCHAR(36) NOT NULL, + Score DECIMAL(10,2), + SuccessStatus VARCHAR(50), + CompletionStatus VARCHAR(50), + TimeSpent INT, + AttemptDate DATETIME(6), + PRIMARY KEY (AttemptId), + CONSTRAINT fk_saa_visit FOREIGN KEY (VisitId) REFERENCES SCORMVisits(VisitId), + CONSTRAINT fk_saa_activity FOREIGN KEY (ActivityId) REFERENCES SCORMActivities(ActivityId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SCORMInteractions.sql b/SCORMInteractions.sql new file mode 100644 index 0000000..0d357c2 --- /dev/null +++ b/SCORMInteractions.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS SCORMInteractions ( + InteractionId VARCHAR(36) NOT NULL, + AttemptId VARCHAR(36) NOT NULL, + ExternalId VARCHAR(255), + Type VARCHAR(50), + Weight DECIMAL(10,2), + LearnerResponse TEXT, + Result VARCHAR(50), + Latency INT, + InteractionDate DATETIME(6), + PRIMARY KEY (InteractionId), + CONSTRAINT fk_si_attempt FOREIGN KEY (AttemptId) REFERENCES SCORMActivityAttempts(AttemptId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SCORMObjects.sql b/SCORMObjects.sql new file mode 100644 index 0000000..89d121c --- /dev/null +++ b/SCORMObjects.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS SCORMObjects ( + ScormObjectId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + Title VARCHAR(255), + Description TEXT, + Version VARCHAR(50), + CreatedDate DATETIME(6), + IsDeleted TINYINT(1), + PRIMARY KEY (ScormObjectId), + INDEX idx_scorm_org (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SCORMVisits.sql b/SCORMVisits.sql new file mode 100644 index 0000000..0bc4af2 --- /dev/null +++ b/SCORMVisits.sql @@ -0,0 +1,13 @@ +CREATE TABLE IF NOT EXISTS SCORMVisits ( + VisitId VARCHAR(36) NOT NULL, + ScormObjectId VARCHAR(36) NOT NULL, + UserId INT NOT NULL, + FirstAccessDate DATETIME(6), + LastAccessDate DATETIME(6), + CompletedDate DATETIME(6), + CompletionStatus VARCHAR(50), + SuccessStatus VARCHAR(50), + Score DECIMAL(10,2), + PRIMARY KEY (VisitId), + CONSTRAINT fk_sv_object FOREIGN KEY (ScormObjectId) REFERENCES SCORMObjects(ScormObjectId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SISCourseMergeDetails.sql b/SISCourseMergeDetails.sql new file mode 100644 index 0000000..860a369 --- /dev/null +++ b/SISCourseMergeDetails.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS SISCourseMergeDetails ( + MergeLogId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + Action VARCHAR(50), + Details TEXT, + PRIMARY KEY (MergeLogId, OrgUnitId), + CONSTRAINT fk_smd_log FOREIGN KEY (MergeLogId) REFERENCES SISCourseMergeLog(MergeLogId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SISCourseMergeLog.sql b/SISCourseMergeLog.sql new file mode 100644 index 0000000..3563afa --- /dev/null +++ b/SISCourseMergeLog.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS SISCourseMergeLog ( + MergeLogId VARCHAR(36) NOT NULL, + SourceOrgUnitId INT NOT NULL, + DestinationOrgUnitId INT NOT NULL, + UserId INT NOT NULL, + MergeDate DATETIME(6), + OperationType VARCHAR(50), + Status VARCHAR(50), + PRIMARY KEY (MergeLogId), + INDEX idx_sm_source (SourceOrgUnitId), + INDEX idx_sm_dest (DestinationOrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SessionHistory.sql b/SessionHistory.sql new file mode 100644 index 0000000..918be83 --- /dev/null +++ b/SessionHistory.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS SessionHistory ( + SessionId VARCHAR(36) NOT NULL, + UserId INT NOT NULL, + LoginDate DATETIME(6), + LogoutDate DATETIME(6), + SessionType VARCHAR(50), + IPAddress VARCHAR(45), + UserAgent TEXT, + PRIMARY KEY (SessionId), + INDEX idx_sh_user (UserId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SourceCourseDeployDetails.sql b/SourceCourseDeployDetails.sql new file mode 100644 index 0000000..4a6b5b2 --- /dev/null +++ b/SourceCourseDeployDetails.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS SourceCourseDeployDetails ( + RequestId VARCHAR(36) NOT NULL, + OrgUnitId INT NOT NULL, + Action VARCHAR(50), + Status VARCHAR(50), + ErrorMessage TEXT, + CompletionDate DATETIME(6), + PRIMARY KEY (RequestId, OrgUnitId), + CONSTRAINT fk_scdd_request FOREIGN KEY (RequestId) REFERENCES SourceCourseDeployRequest(RequestId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SourceCourseDeployRequest.sql b/SourceCourseDeployRequest.sql new file mode 100644 index 0000000..e8d96b2 --- /dev/null +++ b/SourceCourseDeployRequest.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS SourceCourseDeployRequest ( + RequestId VARCHAR(36) NOT NULL, + SourceOrgUnitId INT NOT NULL, + DestinationOrgUnitId INT, + UserId INT NOT NULL, + RequestDate DATETIME(6), + Status VARCHAR(50), + JobId VARCHAR(36), + PRIMARY KEY (RequestId), + INDEX idx_scdr_source (SourceOrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SurveyAttempts.sql b/SurveyAttempts.sql new file mode 100644 index 0000000..0eb1829 --- /dev/null +++ b/SurveyAttempts.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS SurveyAttempts ( + AttemptId INT NOT NULL, + SurveyId INT NOT NULL, + UserId INT, + AttemptNumber INT, + DateStarted DATETIME(6), + DateCompleted DATETIME(6), + IsDeleted TINYINT(1), + PRIMARY KEY (AttemptId), + CONSTRAINT fk_sa_survey FOREIGN KEY (SurveyId) REFERENCES Surveys(SurveyId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SurveyQuestionAnswers.sql b/SurveyQuestionAnswers.sql new file mode 100644 index 0000000..08780b3 --- /dev/null +++ b/SurveyQuestionAnswers.sql @@ -0,0 +1,7 @@ +CREATE TABLE IF NOT EXISTS SurveyQuestionAnswers ( + QuestionAttemptId INT NOT NULL, + AnswerId VARCHAR(36) NOT NULL, + AnswerText TEXT, + PRIMARY KEY (QuestionAttemptId, AnswerId), + CONSTRAINT fk_sqa_ans_attempt FOREIGN KEY (QuestionAttemptId) REFERENCES SurveyQuestionAttempts(QuestionAttemptId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SurveyQuestionAttempts.sql b/SurveyQuestionAttempts.sql new file mode 100644 index 0000000..907a924 --- /dev/null +++ b/SurveyQuestionAttempts.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS SurveyQuestionAttempts ( + QuestionAttemptId INT NOT NULL, + AttemptId INT NOT NULL, + QuestionId VARCHAR(36) NOT NULL, + IsDeleted TINYINT(1), + PRIMARY KEY (QuestionAttemptId), + CONSTRAINT fk_sqa_attempt FOREIGN KEY (AttemptId) REFERENCES SurveyAttempts(AttemptId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/Surveys.sql b/Surveys.sql new file mode 100644 index 0000000..415125e --- /dev/null +++ b/Surveys.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS Surveys ( + SurveyId INT NOT NULL, + OrgUnitId INT NOT NULL, + Name VARCHAR(255) NOT NULL, + Description TEXT, + IsActive TINYINT(1), + IsAnonymous TINYINT(1), + IsDeleted TINYINT(1), + CreatedDate DATETIME(6), + ModifiedDate DATETIME(6), + Version BIGINT, + PRIMARY KEY (SurveyId), + INDEX idx_surveys_org (OrgUnitId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/SystemAccessLog.sql b/SystemAccessLog.sql new file mode 100644 index 0000000..45e8763 --- /dev/null +++ b/SystemAccessLog.sql @@ -0,0 +1,12 @@ +CREATE TABLE IF NOT EXISTS SystemAccessLog ( + AccessLogId BIGINT NOT NULL AUTO_INCREMENT, + UserId INT NOT NULL, + AccessDate DATETIME(6), + IPAddress VARCHAR(45), + RequestType VARCHAR(50), + Url TEXT, + UserAgent TEXT, + PRIMARY KEY (AccessLogId), + INDEX idx_sal_user (UserId), + INDEX idx_sal_date (AccessDate) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/ToolLinks.sql b/ToolLinks.sql new file mode 100644 index 0000000..ec9123d --- /dev/null +++ b/ToolLinks.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS ToolLinks ( + LinkId VARCHAR(36) NOT NULL, + ProviderId VARCHAR(36) NOT NULL, + OrgUnitId INT, + Title VARCHAR(255), + Url TEXT, + IsDeleted TINYINT(1), + PRIMARY KEY (LinkId), + CONSTRAINT fk_tl_provider FOREIGN KEY (ProviderId) REFERENCES ToolProviders(ProviderId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/ToolProviders.sql b/ToolProviders.sql new file mode 100644 index 0000000..d0ee81b --- /dev/null +++ b/ToolProviders.sql @@ -0,0 +1,10 @@ +CREATE TABLE IF NOT EXISTS ToolProviders ( + ProviderId VARCHAR(36) NOT NULL, + Name VARCHAR(255) NOT NULL, + LaunchUrl TEXT, + ConsumerKey VARCHAR(255), + IsActive TINYINT(1), + CreatedDate DATETIME(6), + Version BIGINT, + PRIMARY KEY (ProviderId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/ToolUsage.sql b/ToolUsage.sql new file mode 100644 index 0000000..3ca1b4d --- /dev/null +++ b/ToolUsage.sql @@ -0,0 +1,11 @@ +CREATE TABLE IF NOT EXISTS ToolUsage ( + ToolUsageId BIGINT NOT NULL AUTO_INCREMENT, + OrgUnitId INT NOT NULL, + UserId INT NOT NULL, + ToolType VARCHAR(50) NOT NULL, + LastAccessedDate DATETIME(6), + UsageCount INT DEFAULT 0, + PRIMARY KEY (ToolUsageId), + INDEX idx_tu_org_tool (OrgUnitId, ToolType), + INDEX idx_tu_user (UserId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/TurnItInSubmissions.sql b/TurnItInSubmissions.sql new file mode 100644 index 0000000..321b02a --- /dev/null +++ b/TurnItInSubmissions.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS TurnItInSubmissions ( + DropboxId BIGINT NOT NULL, + SubmissionId BIGINT NOT NULL, + FileId BIGINT NOT NULL, + LastSubmissionDate DATETIME, + SubmissionStatus INT COMMENT '0=Not submitted, 1=Pending, 2=Submitted, 3=Error, 4=Pending Originality, 5=Complete', + SimilarityScore INT, + PRIMARY KEY (SubmissionId, FileId) +) CHARACTER SET utf8mb4; \ No newline at end of file diff --git a/UserContactMethods.sql b/UserContactMethods.sql new file mode 100644 index 0000000..5cf99f2 --- /dev/null +++ b/UserContactMethods.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS UserContactMethods ( + UserId INT NOT NULL, + ContactMethodType VARCHAR(50) NOT NULL, + ContactMethodValue VARCHAR(255), + IsPrimary TINYINT(1), + PRIMARY KEY (UserId, ContactMethodType), + CONSTRAINT fk_ucm_user FOREIGN KEY (UserId) REFERENCES Users(UserId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/UserEntitySystemAccess.sql b/UserEntitySystemAccess.sql new file mode 100644 index 0000000..84bd081 --- /dev/null +++ b/UserEntitySystemAccess.sql @@ -0,0 +1,8 @@ +CREATE TABLE IF NOT EXISTS UserEntitySystemAccess ( + UserId INT NOT NULL, + EntityId VARCHAR(36) NOT NULL, + EntityType VARCHAR(50) NOT NULL, + LastAccessedDate DATETIME(6), + PRIMARY KEY (UserId, EntityId, EntityType), + CONSTRAINT fk_uesa_user FOREIGN KEY (UserId) REFERENCES Users(UserId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/UserLogins.sql b/UserLogins.sql new file mode 100644 index 0000000..3be8f6f --- /dev/null +++ b/UserLogins.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS UserLogins ( + LoginId BIGINT NOT NULL AUTO_INCREMENT, + UserId INT NOT NULL, + LoginDate DATETIME(6), + LoginType VARCHAR(50), + IPAddress VARCHAR(45), + PRIMARY KEY (LoginId), + INDEX idx_ul_user (UserId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/Users.sql b/Users.sql new file mode 100644 index 0000000..38cda10 --- /dev/null +++ b/Users.sql @@ -0,0 +1,15 @@ +CREATE TABLE IF NOT EXISTS Users ( + UserId INT NOT NULL, + UserName VARCHAR(100) NOT NULL, + OrgDefinedId VARCHAR(100), + FirstName VARCHAR(128), + LastName VARCHAR(128), + IsActive TINYINT(1), + Email VARCHAR(255), + ExternalEmail VARCHAR(255), + SignupDate DATETIME(6), + Version BIGINT, + PRIMARY KEY (UserId), + UNIQUE INDEX idx_username (UserName), + INDEX idx_orgdefinedid (OrgDefinedId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file