亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? schema.pm

?? bugzilla
?? PM
?? 第 1 頁 / 共 5 頁
字號(hào):
# -*- Mode: perl; indent-tabs-mode: nil -*-## The contents of this file are subject to the Mozilla Public# License Version 1.1 (the "License"); you may not use this file# except in compliance with the License. You may obtain a copy of# the License at http://www.mozilla.org/MPL/## Software distributed under the License is distributed on an "AS# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or# implied. See the License for the specific language governing# rights and limitations under the License.## The Original Code is the Bugzilla Bug Tracking System.## The Initial Developer of the Original Code is Netscape Communications# Corporation. Portions created by Netscape are# Copyright (C) 1998 Netscape Communications Corporation. All# Rights Reserved.## Contributor(s): Andrew Dunstan <andrew@dunslane.net>,#                 Edward J. Sabol <edwardjsabol@iname.com>#                 Max Kanat-Alexander <mkanat@bugzilla.org>#                 Lance Larsh <lance.larsh@oracle.com>#                 Dennis Melentyev <dennis.melentyev@infopulse.com.ua>#                 Akamai Technologies <bugzilla-dev@akamai.com>package Bugzilla::DB::Schema;############################################################################# Purpose: Object-oriented, DBMS-independent database schema for Bugzilla## This is the base class implementing common methods and abstract schema.############################################################################use strict;use Bugzilla::Error;use Bugzilla::Hook;use Bugzilla::Util;use Bugzilla::Constants;use Hash::Util qw(lock_value unlock_hash lock_keys unlock_keys);use Safe;# Historical, needed for SCHEMA_VERSION = '1.00'use Storable qw(dclone freeze thaw);# New SCHEMA_VERSION (2.00) use thisuse Data::Dumper;=head1 NAMEBugzilla::DB::Schema - Abstract database schema for Bugzilla=head1 SYNOPSIS  # Obtain MySQL database schema.  # Do not do this. Use Bugzilla::DB instead.  use Bugzilla::DB::Schema;  my $mysql_schema = new Bugzilla::DB::Schema('Mysql');  # Recommended way to obtain database schema.  use Bugzilla::DB;  my $dbh = Bugzilla->dbh;  my $schema = $dbh->_bz_schema();  # Get the list of tables in the Bugzilla database.  my @tables = $schema->get_table_list();  # Get the SQL statements need to create the bugs table.  my @statements = $schema->get_table_ddl('bugs');  # Get the database-specific SQL data type used to implement  # the abstract data type INT1.  my $db_specific_type = $schema->sql_type('INT1');=head1 DESCRIPTIONThis module implements an object-oriented, abstract database schema.It should be considered package-private to the Bugzilla::DB module.That means that CGI scripts should never call any function in thismodule directly, but should instead rely on methods provided byBugzilla::DB.=head1 NEW TO SCHEMA.PM?If this is your first time looking at Schema.pm, especially ifyou are making changes to the database, please take a look atL<http://www.bugzilla.org/docs/developer.html#sql-schema> to learnmore about how this integrates into the rest of Bugzilla.=cut#--------------------------------------------------------------------------# Define the Bugzilla abstract database schema and version as constants.=head1 CONSTANTS=over 4=item C<SCHEMA_VERSION>The 'version' of the internal schema structure. This version numberis incremented every time the the fundamental structure of Schemainternals changes.This is NOT changed every time a table or a column is added. This number is incremented only if the internal structures of this Schema would be incompatible with the internal structures of a previous Schema version.In general, unless you are messing around with serializationand deserialization of the schema, you don't need to worry aboutthis constant.=begin privateAn example of the use of the version number:Today, we store all individual columns like this:column_name => { TYPE => 'SOMETYPE', NOTNULL => 1 }Imagine that someday we decide that NOTNULL => 1 is bad, and we wantto change it so that the schema instead uses NULL => 0.But we have a bunch of Bugzilla installations around the world with aserialized schema that has NOTNULL in it! When we deserialize that structure, it just WILL NOT WORK properly inside of our new Schema object.So, immediately after deserializing, we need to go through the hash and change all NOTNULLs to NULLs and so on.We know that we need to do that on deserializing because we know thatversion 1.00 used NOTNULL. Having made the change to NULL, we would nowbe version 1.01.=end private=item C<ABSTRACT_SCHEMA>The abstract database schema structure consists of a hash referencein which each key is the name of a table in the Bugzilla database.The value for each key is a hash reference containing the keysC<FIELDS> and C<INDEXES> which in turn point to array referencescontaining information on the table's fields and indexes. A field hash reference should must contain the key C<TYPE>. Optional fieldkeys include C<PRIMARYKEY>, C<NOTNULL>, and C<DEFAULT>. The C<INDEXES> array reference contains index names and information regarding the index. If the index name points to an array reference,then the index is a regular index and the array contains the indexedcolumns. If the index name points to a hash reference, then the hashmust contain the key C<FIELDS>. It may also contain the key C<TYPE>,which can be used to specify the type of index such as UNIQUE or FULLTEXT.=back=cutuse constant SCHEMA_VERSION  => '2.00';use constant ABSTRACT_SCHEMA => {    # BUG-RELATED TABLES    # ------------------    # General Bug Information    # -----------------------    bugs => {        FIELDS => [            bug_id              => {TYPE => 'MEDIUMSERIAL', NOTNULL => 1,                                    PRIMARYKEY => 1},            assigned_to         => {TYPE => 'INT3', NOTNULL => 1},            bug_file_loc        => {TYPE => 'TEXT'},            bug_severity        => {TYPE => 'varchar(64)', NOTNULL => 1},            bug_status          => {TYPE => 'varchar(64)', NOTNULL => 1},            creation_ts         => {TYPE => 'DATETIME'},            delta_ts            => {TYPE => 'DATETIME', NOTNULL => 1},            short_desc          => {TYPE => 'varchar(255)', NOTNULL => 1},            op_sys              => {TYPE => 'varchar(64)', NOTNULL => 1},            priority            => {TYPE => 'varchar(64)', NOTNULL => 1},            product_id          => {TYPE => 'INT2', NOTNULL => 1},            rep_platform        => {TYPE => 'varchar(64)', NOTNULL => 1},            reporter            => {TYPE => 'INT3', NOTNULL => 1},            version             => {TYPE => 'varchar(64)', NOTNULL => 1},            component_id        => {TYPE => 'INT2', NOTNULL => 1},            resolution          => {TYPE => 'varchar(64)',                                    NOTNULL => 1, DEFAULT => "''"},            target_milestone    => {TYPE => 'varchar(20)',                                    NOTNULL => 1, DEFAULT => "'---'"},            qa_contact          => {TYPE => 'INT3'},            status_whiteboard   => {TYPE => 'MEDIUMTEXT', NOTNULL => 1,                                    DEFAULT => "''"},            votes               => {TYPE => 'INT3', NOTNULL => 1,                                    DEFAULT => '0'},            # Note: keywords field is only a cache; the real data            # comes from the keywords table            keywords            => {TYPE => 'MEDIUMTEXT', NOTNULL => 1,                                    DEFAULT => "''"},            lastdiffed          => {TYPE => 'DATETIME'},            everconfirmed       => {TYPE => 'BOOLEAN', NOTNULL => 1},            reporter_accessible => {TYPE => 'BOOLEAN',                                    NOTNULL => 1, DEFAULT => 'TRUE'},            cclist_accessible   => {TYPE => 'BOOLEAN',                                    NOTNULL => 1, DEFAULT => 'TRUE'},            estimated_time      => {TYPE => 'decimal(5,2)',                                    NOTNULL => 1, DEFAULT => '0'},            remaining_time      => {TYPE => 'decimal(5,2)',                                    NOTNULL => 1, DEFAULT => '0'},            deadline            => {TYPE => 'DATETIME'},            alias               => {TYPE => 'varchar(20)'},        ],        INDEXES => [            bugs_alias_idx            => {FIELDS => ['alias'],                                          TYPE => 'UNIQUE'},            bugs_assigned_to_idx      => ['assigned_to'],            bugs_creation_ts_idx      => ['creation_ts'],            bugs_delta_ts_idx         => ['delta_ts'],            bugs_bug_severity_idx     => ['bug_severity'],            bugs_bug_status_idx       => ['bug_status'],            bugs_op_sys_idx           => ['op_sys'],            bugs_priority_idx         => ['priority'],            bugs_product_id_idx       => ['product_id'],            bugs_reporter_idx         => ['reporter'],            bugs_version_idx          => ['version'],            bugs_component_id_idx     => ['component_id'],            bugs_resolution_idx       => ['resolution'],            bugs_target_milestone_idx => ['target_milestone'],            bugs_qa_contact_idx       => ['qa_contact'],            bugs_votes_idx            => ['votes'],        ],    },    bugs_activity => {        FIELDS => [            bug_id    => {TYPE => 'INT3', NOTNULL => 1},            attach_id => {TYPE => 'INT3'},            who       => {TYPE => 'INT3', NOTNULL => 1},            bug_when  => {TYPE => 'DATETIME', NOTNULL => 1},            fieldid   => {TYPE => 'INT3', NOTNULL => 1},            added     => {TYPE => 'TINYTEXT'},            removed   => {TYPE => 'TINYTEXT'},        ],        INDEXES => [            bugs_activity_bug_id_idx  => ['bug_id'],            bugs_activity_who_idx     => ['who'],            bugs_activity_bug_when_idx => ['bug_when'],            bugs_activity_fieldid_idx => ['fieldid'],        ],    },    cc => {        FIELDS => [            bug_id => {TYPE => 'INT3', NOTNULL => 1},            who    => {TYPE => 'INT3', NOTNULL => 1},        ],        INDEXES => [            cc_bug_id_idx => {FIELDS => [qw(bug_id who)],                              TYPE => 'UNIQUE'},            cc_who_idx    => ['who'],        ],    },    longdescs => {        FIELDS => [            comment_id      => {TYPE => 'MEDIUMSERIAL',  NOTNULL => 1,                                PRIMARYKEY => 1},            bug_id          => {TYPE => 'INT3',  NOTNULL => 1},            who             => {TYPE => 'INT3', NOTNULL => 1},            bug_when        => {TYPE => 'DATETIME', NOTNULL => 1},            work_time       => {TYPE => 'decimal(5,2)', NOTNULL => 1,                                DEFAULT => '0'},            thetext         => {TYPE => 'MEDIUMTEXT', NOTNULL => 1},            isprivate       => {TYPE => 'BOOLEAN', NOTNULL => 1,                                DEFAULT => 'FALSE'},            already_wrapped => {TYPE => 'BOOLEAN', NOTNULL => 1,                                DEFAULT => 'FALSE'},            type            => {TYPE => 'INT2', NOTNULL => 1,                                DEFAULT => '0'},            extra_data      => {TYPE => 'varchar(255)'}        ],        INDEXES => [            longdescs_bug_id_idx   => ['bug_id'],            longdescs_who_idx     => [qw(who bug_id)],            longdescs_bug_when_idx => ['bug_when'],            longdescs_thetext_idx => {FIELDS => ['thetext'],                                      TYPE => 'FULLTEXT'},        ],    },    dependencies => {        FIELDS => [            blocked   => {TYPE => 'INT3', NOTNULL => 1},            dependson => {TYPE => 'INT3', NOTNULL => 1},        ],        INDEXES => [            dependencies_blocked_idx   => ['blocked'],            dependencies_dependson_idx => ['dependson'],        ],    },    votes => {        FIELDS => [            who        => {TYPE => 'INT3', NOTNULL => 1},            bug_id     => {TYPE => 'INT3', NOTNULL => 1},            vote_count => {TYPE => 'INT2', NOTNULL => 1},        ],        INDEXES => [            votes_who_idx    => ['who'],            votes_bug_id_idx => ['bug_id'],        ],    },    attachments => {        FIELDS => [            attach_id    => {TYPE => 'MEDIUMSERIAL', NOTNULL => 1,                             PRIMARYKEY => 1},            bug_id       => {TYPE => 'INT3', NOTNULL => 1},            creation_ts  => {TYPE => 'DATETIME', NOTNULL => 1},            description  => {TYPE => 'MEDIUMTEXT', NOTNULL => 1},            mimetype     => {TYPE => 'MEDIUMTEXT', NOTNULL => 1},            ispatch      => {TYPE => 'BOOLEAN'},            filename     => {TYPE => 'varchar(100)', NOTNULL => 1},            submitter_id => {TYPE => 'INT3', NOTNULL => 1},            isobsolete   => {TYPE => 'BOOLEAN', NOTNULL => 1,                             DEFAULT => 'FALSE'},            isprivate    => {TYPE => 'BOOLEAN', NOTNULL => 1,                             DEFAULT => 'FALSE'},            isurl        => {TYPE => 'BOOLEAN', NOTNULL => 1,                             DEFAULT => 'FALSE'},        ],        INDEXES => [            attachments_bug_id_idx => ['bug_id'],            attachments_creation_ts_idx => ['creation_ts'],            attachments_submitter_id_idx => ['submitter_id', 'bug_id'],        ],    },    attach_data => {        FIELDS => [            id      => {TYPE => 'INT3', NOTNULL => 1,                        PRIMARYKEY => 1},            thedata => {TYPE => 'LONGBLOB', NOTNULL => 1},        ],    },    duplicates => {        FIELDS => [            dupe_of => {TYPE => 'INT3', NOTNULL => 1},            dupe    => {TYPE => 'INT3', NOTNULL => 1,                       PRIMARYKEY => 1},        ],    },    # Keywords    # --------    keyworddefs => {        FIELDS => [            id          => {TYPE => 'SMALLSERIAL', NOTNULL => 1,                            PRIMARYKEY => 1},

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品国产久精国产爱| 国产精品免费久久| 欧洲av一区二区嗯嗯嗯啊| 日韩成人免费电影| 亚洲国产日韩在线一区模特 | 91精品国产一区二区三区| 播五月开心婷婷综合| 国产在线精品一区二区三区不卡 | 日本不卡的三区四区五区| 亚洲午夜私人影院| 亚洲精品水蜜桃| 亚洲欧洲三级电影| 中文字幕中文字幕中文字幕亚洲无线| 日韩限制级电影在线观看| 欧美日韩国产一区二区三区地区| 99re在线视频这里只有精品| 国产高清成人在线| 成人免费va视频| 成人动漫精品一区二区| 成人禁用看黄a在线| 成人av资源站| 欧洲另类一二三四区| 欧美一区二区三区色| 欧美电视剧免费全集观看| 精品国产污污免费网站入口| 精品99一区二区| 久久精品亚洲国产奇米99| 欧美经典一区二区三区| 国产精品蜜臀av| 亚洲午夜久久久久| 麻豆精品视频在线观看视频| 国产乱色国产精品免费视频| 成人av影视在线观看| 欧美性生交片4| 欧美mv日韩mv国产网站app| 精品国产一区久久| 国产精品入口麻豆九色| 亚洲国产日韩a在线播放性色| 久久国产精品99精品国产| 成人深夜视频在线观看| 欧美日韩在线播放一区| 精品精品国产高清a毛片牛牛| 亚洲男同性恋视频| 狠狠色丁香久久婷婷综合_中| 成人动漫一区二区| 久久综合色综合88| 亚洲观看高清完整版在线观看| 精品午夜久久福利影院| 欧美一a一片一级一片| 国产午夜精品久久久久久久| 奇米影视一区二区三区| 色视频成人在线观看免| 久久久精品免费免费| 免费在线成人网| 欧美三区在线视频| 国产精品久久久久久久久晋中| 麻豆一区二区三区| 91精品国产高清一区二区三区 | 一区二区三区免费| 91麻豆免费观看| 1区2区3区精品视频| 丁香一区二区三区| 国产欧美视频在线观看| 国产一区二三区| 久久久av毛片精品| 懂色av一区二区三区免费观看| 国产日韩欧美综合在线| 国产激情91久久精品导航| 精品成人一区二区三区四区| 日韩经典一区二区| 欧美一区日韩一区| 久久精品99久久久| 国产亚洲欧美色| 成人精品电影在线观看| 亚洲三级在线免费观看| 91伊人久久大香线蕉| 亚洲尤物视频在线| 欧美一区二区视频在线观看2020| 日韩中文字幕一区二区三区| 欧美一区二区二区| 粉嫩av一区二区三区在线播放| 国产精品情趣视频| 在线观看av不卡| 美国十次了思思久久精品导航| 国产视频一区二区在线| 91视频com| 精品一区二区三区久久| 一区在线中文字幕| 欧美一区二区女人| 成人激情小说网站| 日韩黄色小视频| 国产精品久久久久久久久免费樱桃 | av激情综合网| 91啪在线观看| 国模冰冰炮一区二区| 亚洲日本乱码在线观看| 555www色欧美视频| jiyouzz国产精品久久| 日本不卡视频一二三区| 亚洲黄色录像片| 久久久久久亚洲综合| 欧美精选午夜久久久乱码6080| 国产1区2区3区精品美女| 亚洲va在线va天堂| 亚洲欧美日韩在线播放| 国产欧美一区视频| 精品三级av在线| 欧美肥大bbwbbw高潮| 色综合色综合色综合| 成人动漫中文字幕| 国产aⅴ综合色| 国产成人自拍网| 激情小说欧美图片| 日精品一区二区三区| 天天影视色香欲综合网老头| 亚洲综合一区二区三区| 国产精品欧美一区二区三区| 国产亚洲欧洲一区高清在线观看| 精品三级av在线| 国产视频911| 欧美国产日本韩| 国产精品进线69影院| 国产精品福利一区| 亚洲免费av高清| 五月天一区二区三区| 日韩国产精品久久久| 久久99精品久久久久婷婷| 蜜臀91精品一区二区三区| 精品在线播放午夜| 成人手机在线视频| 欧美日韩一级大片网址| 欧美成人精精品一区二区频| 国产亚洲精品aa| 亚洲男人的天堂av| 三级亚洲高清视频| 国产一区久久久| 色综合网色综合| 欧美一区二区视频在线观看2020| 日韩欧美国产综合| 亚洲日本va午夜在线电影| 日本不卡1234视频| 成人白浆超碰人人人人| 欧美另类z0zxhd电影| 国产精品美女一区二区三区| 亚洲va国产天堂va久久en| 国产成人在线视频网站| 在线不卡中文字幕| 国产精品成人免费| 韩国一区二区在线观看| 欧美日韩亚洲综合一区二区三区| 久久综合色综合88| 亚洲成av人综合在线观看| 99国产精品国产精品毛片| 精品日韩在线观看| 亚洲午夜久久久久久久久久久| 国产成人精品免费一区二区| 91精品免费在线观看| 亚洲美女免费视频| 成人美女视频在线观看18| 精品国产乱码久久久久久牛牛 | 欧美午夜精品理论片a级按摩| 国产精品青草综合久久久久99| 黄色成人免费在线| 欧美精品一区在线观看| 婷婷成人激情在线网| 色av成人天堂桃色av| 国产精品久久久久7777按摩| 国产成人综合在线播放| 国产日韩视频一区二区三区| 国产成人在线影院| 国产精品色眯眯| 97精品国产97久久久久久久久久久久| 久久久久亚洲蜜桃| 丁香婷婷综合色啪| 国产精品麻豆网站| 在线免费观看日韩欧美| 亚洲第一久久影院| 91精品国产欧美一区二区| 麻豆国产精品视频| 国产精品久久久久久久浪潮网站 | 欧美一级久久久| 国产在线播放一区| 国产精品视频免费| 色八戒一区二区三区| 日本女人一区二区三区| 亚洲精品一区二区三区精华液 | 粉嫩欧美一区二区三区高清影视| 欧美国产精品专区| 在线免费亚洲电影| 蜜臀av一区二区在线免费观看| 日韩精品一区二区三区在线播放| 高清在线成人网| 天堂蜜桃一区二区三区| 国产亚洲va综合人人澡精品| 色综合天天综合| 国产精品资源网站| 午夜精品国产更新| 国产三级三级三级精品8ⅰ区| 91豆麻精品91久久久久久| 国产一区不卡在线|