Redmine數據表字段說明

Redmine數據表結構

issues

tracker_id 跟蹤標籤的id,外鍵到trakers表node

project_id 外鍵到項目projectide

subject 主題ui

description 問題描述code

due_data 指望完成時間orm

category_id 類別,外鍵到issue_categories表對象

status_id 狀態,外鍵到issue_statuses表blog

assigned_to_id 指派給的用戶id,外鍵到user表ip

priority_id 優先級,沒找到這個表get

fixed_version_id 周版本的id,外鍵到version表it

author_id 做者的id,外鍵到user表

created_on 建立時間,有時候不用這個建立時間而是用journals的建立時間是爲了獲取修改時間

updated_on 更新時間

start_date 問題開始日期

estimated_hours 預計工時

parent_id 父任務id,外鍵到另外一個issue

root_id 任務關係樹根節點的id

建立腳本:

CREATE TABLE `issues` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `tracker_id` int(11) NOT NULL DEFAULT '0',
  `project_id` int(11) NOT NULL DEFAULT '0',
  `subject` varchar(255) NOT NULL DEFAULT '',
  `description` text,
  `due_date` date DEFAULT NULL,
  `category_id` int(11) DEFAULT NULL,
  `status_id` int(11) NOT NULL DEFAULT '0',
  `assigned_to_id` int(11) DEFAULT NULL,
  `priority_id` int(11) NOT NULL DEFAULT '0',
  `fixed_version_id` int(11) DEFAULT NULL,
  `author_id` int(11) NOT NULL DEFAULT '0',
  `lock_version` int(11) NOT NULL DEFAULT '0',
  `created_on` datetime DEFAULT NULL,
  `updated_on` datetime DEFAULT NULL,
  `start_date` date DEFAULT NULL,
  `done_ratio` int(11) NOT NULL DEFAULT '0',
  `estimated_hours` float DEFAULT NULL,
  `parent_id` int(11) DEFAULT NULL,
  `root_id` int(11) DEFAULT NULL,
  `lft` int(11) DEFAULT NULL,
  `rgt` int(11) DEFAULT NULL,
  `is_private` tinyint(1) NOT NULL DEFAULT '0',
  `closed_on` datetime DEFAULT NULL,
  `deleted` tinyint(1) DEFAULT '0',
  `acp_id` int(11) DEFAULT NULL,
  `cache_timestamp` int(11) DEFAULT '0',
  `is_kanban_node` tinyint(1) DEFAULT '0',
  `standard_status` int(11) DEFAULT '1',
  `qa_kanban_status` int(11) DEFAULT NULL,
  `last_status_change_type` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `index_issues_on_acp_id` (`acp_id`),
  KEY `issues_project_id` (`project_id`),
  KEY `index_issues_on_status_id` (`status_id`),
  KEY `index_issues_on_category_id` (`category_id`),
  KEY `index_issues_on_assigned_to_id` (`assigned_to_id`),
  KEY `index_issues_on_fixed_version_id` (`fixed_version_id`),
  KEY `index_issues_on_tracker_id` (`tracker_id`),
  KEY `index_issues_on_priority_id` (`priority_id`),
  KEY `index_issues_on_author_id` (`author_id`),
  KEY `index_issues_on_created_on` (`created_on`),
  KEY `index_issues_on_root_id_and_lft_and_rgt` (`root_id`,`lft`,`rgt`),
  KEY `index_issues_is_kanban_node` (`is_kanban_node`)
) ENGINE=InnoDB AUTO_INCREMENT=48760 DEFAULT CHARSET=utf8

journals

每一次更新issue都會生成一條journal和對應的journal_detail

journalized_id 對應的issue_id,但不是外鍵

journalized_type 把全部數據取出來去重後,發現這個字段只有一個值,Issue

user_id User的外鍵

created_on 生成journal的時間

建立腳本:

CREATE TABLE `journals` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `journalized_id` int(11) NOT NULL DEFAULT '0',
  `journalized_type` varchar(30) NOT NULL DEFAULT '',
  `user_id` int(11) NOT NULL DEFAULT '0',
  `notes` text,
  `created_on` datetime NOT NULL,
  `private_notes` tinyint(1) NOT NULL DEFAULT '0',
  `is_auto_flow` tinyint(1) DEFAULT '0',
  PRIMARY KEY (`id`),
  KEY `journals_journalized_id` (`journalized_id`,`journalized_type`),
  KEY `index_journals_on_user_id` (`user_id`),
  KEY `index_journals_on_journalized_id` (`journalized_id`),
  KEY `index_journals_on_created_on` (`created_on`)
) ENGINE=InnoDB AUTO_INCREMENT=204197 DEFAULT CHARSET=utf8

journal_details

journal_id 外鍵到journal

prop_key 對issue改動了什麼屬性,好比"status_id"

property 改動的屬性名

old_value 屬性舊值

value 屬性新值

issue_statuses

name 新建、完成、關閉等

is_closed 只有完成這裏是1

is_default 通常id爲1的是默認狀態

position 列表位置,通常跟id一致

projects

不一樣用戶會有不一樣的project權限

name 中文名

description 描述,可爲空

is_public 通常爲1

parent_id 父項目的id

created_on 建立時間

updated_on 更新時間

identifier 項目的英文標識

status 都是1, 暫不清楚其餘值的含義

lft、rgt

nested set is the way Redmine stores trees in SQL.

至關於此節點的左右範圍,並非左右節點

parent.lft<child.lft and child.rgt>parent.rgt

如何遍歷這種樹:Modified Preorder Tree Traversal

trackers

不一樣project裏有不一樣的跟蹤標籤,以project_trackers表關聯

name 中文名

position 列表位置

custom_fields

好比「跟進者」就是一個自定義字段,實際的值是存在custom_values表中的

type 修飾對象的類型,若是是Project的自定義對象,值爲ProjectCustomField;若是是Issue的,值爲IssueCustomField

name 中文名

field_format 該字段的格式,能夠是list、bool、date、issue_status、user等值,好比跟進者的字段格式就是user

possible_value 可能的值,通常list、bool格式的這個字段會有值,其餘多爲空值

is_required 是否必填

is_for_all 有一些自定義字段不是對全部人都開放的

searchable 通常list格式的這個字段會是1

default_value 默認值

editable 是否可修改

custom_values

至關於issue或project與custom_fields的關聯表

customized_type 能夠是Project或Issue

customized_id 修飾對象的id,若是是Issue,那就是issue的id

custom_field_id 外鍵到custom_field

value 實際的值

相關文章
相關標籤/搜索