--connect 'data.fdb';
CREATE TABLE fm_category (
    category_id_c integer identity(1,1) NOT NULL,
    category_name_c character varying(25) NOT NULL
);
CREATE TABLE fm_clear_relation (
    clear_oid_c character varying(200) NOT NULL,
    be_cleared_oid_c character varying(200) NOT NULL,
    be_cleared_name_c character varying(20),
    be_cleared_condition_c character varying(100),
    clear_condition_c character varying(100),
    ip_address_c character varying(50)
);
CREATE TABLE fm_clear_trap (
    event_oid_c character varying(200) NOT NULL,
    event_name_c character varying(40)
);
CREATE TABLE fm_correlation (
    corr_time_c smalldatetime NOT NULL,
    correlation_c integer NOT NULL,
    corr_name_c character varying(16) NOT NULL,
    message_c character varying(32)
);
CREATE TABLE fm_deduplication (
    oid_c character varying(200),
    conditions_c character varying(50),
    name_c character varying(40)
);
CREATE TABLE fm_enterprise (
    enterprise_oid_c character varying(200) NOT NULL,
    enterprise_name_c character varying(40) NOT NULL
);
CREATE TABLE fm_escalation_schedule (
    schedule_id_c integer NOT NULL,
    start_date_time_c bigint,
    period_c bigint,
    repetitions_c integer,
    enabled_c character(1) DEFAULT 'N',
    action_c text,
    other_params character varying(200)
);
CREATE TABLE fm_event (
    event_oid_c character varying(200) NOT NULL,
    event_name_c character varying(100) NOT NULL,
    event_mode_c character(1) NOT NULL,
    log_message_c character varying(500),
    enterprise_oid_c character varying(200) NOT NULL,
    actions_c text,
    audio_name_c character varying(256),
    severity_c smallint,
    description_c text,
    severity_config_c character varying(500),
    sources_c character varying(800),
    forwarding_c character varying(120),
    category_id_c integer DEFAULT 0,
    command_line_c text
);
CREATE TABLE fm_general_time_email (
    email_c character varying(80) NOT NULL,
    timebucket_id_c bigint NOT NULL
);
CREATE TABLE fm_trap (
    ip_address_c character varying(50) NOT NULL,
    trap_oid_c character varying(200) NOT NULL,
    ack_time_c smalldatetime,
    acked_c character(1) DEFAULT 'N' NOT NULL,
    ack_user_c character varying(30),
    message_c character varying(250),
    correlation_c integer,
    clearing_c character(1) DEFAULT 'N' NOT NULL,
    clear_time_c smalldatetime,
    clear_user_c character varying(30),
    generic_c character(1),
    clear_comment_c character varying(80),
    ack_comment_c character varying(80),
    version_number_c character(1) NOT NULL,
    severity_c smallint,
    trap_id_c numeric(16,3) NOT NULL,
    enterprise_c character varying(200),
    specific_c integer,
    timestamp_c bigint,
    probe_id_c integer DEFAULT -1 NOT NULL
);
CREATE TABLE fm_v3_config (
    username_c character varying(30) NOT NULL,
    engine_id_c character varying(30) NOT NULL,
    auth_password_c character varying(160),
    privacy_password_c character varying(160),
    auth_protocol_c character(1) NOT NULL,
    privacy_protocol_c character(1) NOT NULL,
    security_level_c character(1) NOT NULL
);
CREATE TABLE fm_varbind (
    varbind_name_c character varying(200) NOT NULL,
    varbind_value_c character varying(200),
    trap_id_c numeric(16,3) NOT NULL,
    varbind_type_c smallint NOT NULL,
    index_c smallint,
    probe_id_c integer DEFAULT -1 NOT NULL
);
CREATE TABLE login_t (
    login_name_c character varying(100) NOT NULL,
    login_fullname_c character  varying(128) ,
    login_password_c character  varying(128) ,
    login_permission_c integer NOT NULL,
    login_active_c character(1) NOT NULL,
    allowed_ips_c character varying(300)
);
CREATE TABLE msp_authentication (
    username_c character  varying(128)  NOT NULL,
    password_c character  varying(128) ,
    ips_c character  varying(128) ,
    mode_c smallint,
    id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE msp_call_queue (
    call_id_c integer identity(1,1) NOT NULL,
    probe_id_c integer NOT NULL,
    call_c text NOT NULL
);
CREATE TABLE msp_probe (
    probe_id_c integer NOT NULL,
    probe_name_c character varying(128),
    probe_ip_c character varying(128),
    probe_port_c character varying(128),
    time_c bigint,
    last_snapshot_c bigint
);
CREATE TABLE msp_schedule (
    schedule_id_c integer NOT NULL,
    start_date_time_c bigint,
    period_c bigint,
    repetitions_c integer
);
CREATE TABLE org_view_relation (
    org_name_c character varying(100) NOT NULL,
    view_id_c character varying(60) NOT NULL
);
CREATE TABLE pm_baseline (
    metrics_id_c bigint NOT NULL,
    rolling_period_c bigint NOT NULL,
    baseline_condition_id_c smallint NOT NULL,
    baseline_threshold_c double precision NOT NULL,
    period_unit_c smallint NOT NULL
);
CREATE TABLE pm_database_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_dependency (
    schedule_id_c integer NOT NULL,
    direct_dependency_c integer NOT NULL,
    dependency_condition_c character(1)
);
CREATE TABLE pm_directory_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_dns_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_email_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision,
    period_index_c integer,
    threshold_state_c character(1),
    error_code_c character(1),
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_expression (
    expression_name_c character varying(100) NOT NULL,
    expression_c character varying(400) NOT NULL,
    description_c character varying(300),
    is_favorite_c character(1) DEFAULT 'N'
);
CREATE TABLE pm_expression_vars (
    expression_name_c character varying(100) NOT NULL,
    var_name_c character varying(100) NOT NULL,
    var_oid_c character varying(200) NOT NULL
);
CREATE TABLE pm_external_executor_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_file_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_fixed_threshold (
    metrics_timebucket_id_c bigint NOT NULL,
    is_clear_alarm_c character(1) NOT NULL,
    severity_id_c smallint NOT NULL,
    fixed_condition_id_c smallint NOT NULL,
    fixed_threshold_c character varying(200) NOT NULL
);
CREATE TABLE pm_ftp_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_group (
    group_id_c bigint NOT NULL,
    group_name_c character varying(100) NOT NULL
);
CREATE TABLE pm_http_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_ldap_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_log_file_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision,
    period_index_c integer,
    threshold_state_c character(1),
    error_code_c character(1),
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_metrics (
    metrics_id_c bigint NOT NULL,
    schedule_id_c integer NOT NULL,
    result_type_id_c integer NOT NULL,
    fixed_statistical_id_c smallint NOT NULL,
    arm_breaks_c smallint NOT NULL,
    rearm_breaks_c smallint NOT NULL,
    parameters_c text NOT NULL,
    is_threshold_enabled character(1) NOT NULL
);
CREATE TABLE pm_metrics_timebucket (
    metrics_timebucket_id_c bigint NOT NULL,
    timebucket_id_c bigint NOT NULL,
    metrics_id_c bigint NOT NULL
);
CREATE TABLE pm_ping_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_port_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_protocol_query (
    schedule_id_c integer NOT NULL,
    parameters_c text NOT NULL,
    protocol_type_c smallint NOT NULL,
    is_saved_c character(1) NOT NULL,
    target_type_c character varying(512) NOT NULL,
    actions_c text
);
CREATE TABLE pm_radius_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_remote_host (
    host_id_c bigint NOT NULL,
    host_name_c character varying(100) NOT NULL,
    protocol_c integer NOT NULL,
    user_name_c character varying(100) NOT NULL,
    parameter_c text NOT NULL,
    probe_id_c integer DEFAULT -1
);
CREATE TABLE pm_schedule (
    schedule_id_c integer NOT NULL,
    schedule_name_c character varying(100) NOT NULL,
    start_date_time_c bigint NOT NULL,
    end_date_time_c bigint NOT NULL,
    period_c bigint NOT NULL,
    repetitions_c integer NOT NULL,
    is_suspended_c character(1) NOT NULL,
    period_unit_c smallint NOT NULL,
    multiple_c smallint NOT NULL,
    resume_time_c bigint NOT NULL,
    group_id_c bigint NOT NULL,
    is_expired_c character(1) NOT NULL,
    probe_id_c integer,
    type_c integer DEFAULT 0
);
CREATE TABLE pm_schedule_host (
    schedule_host_id_c bigint NOT NULL,
    schedule_id_c integer NOT NULL,
    ip_address_c character varying(4000) NOT NULL
);
CREATE TABLE pm_schedule_timebucket (
    schedule_id_c integer NOT NULL,
    timebucket_id_c bigint NOT NULL
);
CREATE TABLE pm_snapshot (
    schedule_id_c integer NOT NULL,
    chart_type_c smallint NOT NULL,
    parameters_c character varying(300),
    time_type_c smallint NOT NULL
);
CREATE TABLE pm_snmp_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_ssh_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_statistical_threshold (
    metrics_id_c bigint NOT NULL,
    is_clear_alarm_c character(1) NOT NULL,
    severity_id_c smallint NOT NULL,
    statistical_condition_id_c smallint NOT NULL,
    statistical_threshold_c double precision NOT NULL,
    statistical_mode character(1) DEFAULT 'Y' NOT NULL
);
CREATE TABLE pm_telnet_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE pm_temp_result (
    result_value_c double precision NOT NULL,
    result_condition_c integer NOT NULL
);
CREATE TABLE pm_threshold_result (
    schedule_host_id_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    is_clear_alarm_c character(1) NOT NULL,
    severity_id_c smallint NOT NULL,
    breaks_count_c smallint NOT NULL
);
CREATE TABLE pm_timebucket (
    timebucket_id_c bigint NOT NULL,
    timebucket_name_c character varying(100) NOT NULL
);
CREATE TABLE pm_timebucket_item (
    timebucket_item_id_c integer identity(1,1) NOT NULL,
    timebucket_id_c bigint NOT NULL,
    start_day_id_c smallint NOT NULL,
    start_time_c integer NOT NULL,
    end_day_id_c smallint NOT NULL,
    end_time_c integer NOT NULL
);
CREATE TABLE pm_wmi_result (
    schedule_host_id_c bigint NOT NULL,
    run_date_time_c bigint NOT NULL,
    result_type_id_c integer NOT NULL,
    result_value_c double precision NOT NULL,
    period_index_c integer NOT NULL,
    threshold_state_c character(1) NOT NULL,
    error_code_c character(1) NOT NULL,
    result_id_c integer identity(1,1) NOT NULL,
);
CREATE TABLE properties_t (
    name_c character varying(100) NOT NULL,
    value_c text
);
CREATE TABLE rp_schedule (
    schedule_id_c integer NOT NULL,
    schedule_name_c character varying(100) NOT NULL,
    start_date_time_c bigint NOT NULL,
    period_c bigint NOT NULL,
    repetitions_c integer NOT NULL,
    kind_c smallint NOT NULL,
    index_c smallint NOT NULL,
    objects_c text NOT NULL,
    mail_c character varying(600) NOT NULL,
    content_c character varying(100) NOT NULL,
    pause_c character(1) NOT NULL,
    type_c smallint NOT NULL,
    unit_c character varying(50),
    show_type_c smallint DEFAULT 0
);
CREATE TABLE systemstatus_t (
    name_c character varying(10) NOT NULL,
    value_c character varying(10)
);
CREATE TABLE topo_baseline_t (
    domain_c character varying(60) NOT NULL,
    name_c character varying(60) NOT NULL,
    data_c  image ,
    type_c character(1),
    timestamp_c smalldatetime
);
CREATE TABLE topo_discovery_report (
    type_c character varying(20),
    number_c character varying(20),
    mode_c character(1)
);
CREATE TABLE topo_discovery_schedule (
    schedule_id_c integer NOT NULL,
    start_date_time_c bigint,
    period_c bigint,
    repetitions_c integer,
    user_period_c integer DEFAULT 0,
    user_time_c integer DEFAULT 0,
    enabled_c character(1),
    other_params character varying(200)
);
CREATE TABLE topo_graph_schedule (
    schedule_id_c integer NOT NULL,
    schedule_name_c character varying(30) NOT NULL,
    start_date_time_c bigint NOT NULL,
    end_date_time_c bigint NOT NULL,
    period_c bigint NOT NULL,
    repetitions_c integer NOT NULL,
    is_suspended_c character(1) NOT NULL,
    timeout_c integer NOT NULL,
    other_params_c character varying(200),
    retries_c smallint
);
CREATE TABLE topo_graphdata (
    domain_c character varying(60) NOT NULL,
    name_c character varying(60) NOT NULL,
    data_c  image ,
    type_c character(1),
    timestamp_c smalldatetime
);
CREATE TABLE topo_iconjar (
    data_c  image 
);
CREATE TABLE topo_ping_result (
    ip_c character varying(60) NOT NULL,
    time_c bigint NOT NULL,
    rtt_c bigint NOT NULL,
    probe_id_c integer DEFAULT -1 NOT NULL
);
CREATE TABLE topo_vlan_ports (
    bridgeaddress_c character varying(50) NOT NULL,
    portnumber_c character varying(10) NOT NULL,
    ifindex_c character varying(10),
    mac_c character varying(30),
    iftype_c character varying(30),
    ifspeed_c character varying(30),
    vlanid_c character varying(10) NOT NULL,
    tagging_c character(1)
);
CREATE TABLE topo_vlan_switches (
    bridgeaddress_c character varying(50) NOT NULL,
    ipaddress_c character varying(60) NOT NULL,
    name_c character varying(50),
    type_c character varying(30)
);
CREATE TABLE user_org_relation (
    username_c character varying(100) NOT NULL,
    org_name_c character varying(100) NOT NULL
);
CREATE TABLE user_organization (
    name_c character varying(100) NOT NULL
);
CREATE TABLE user_properties (
    user_name_c character varying(100) NOT NULL,
    name_c character varying(100) NOT NULL,
    value_c text
);
ALTER TABLE topo_baseline_t
    ADD CONSTRAINT baseline_topo_t_pkey PRIMARY KEY (domain_c, name_c);
ALTER TABLE topo_discovery_schedule
    ADD CONSTRAINT discovery_schedule_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE fm_category
    ADD CONSTRAINT fm_category_pkey PRIMARY KEY (category_id_c);
ALTER TABLE fm_category
    ADD CONSTRAINT fm_category_u UNIQUE (category_name_c);
ALTER TABLE fm_clear_trap
    ADD CONSTRAINT fm_clear_trap_pkey PRIMARY KEY (event_oid_c);
ALTER TABLE fm_correlation
    ADD CONSTRAINT fm_correlation_pkey PRIMARY KEY (correlation_c);
ALTER TABLE fm_enterprise
    ADD CONSTRAINT fm_enterprise_enterprise_name_key UNIQUE (enterprise_name_c);
ALTER TABLE fm_enterprise
    ADD CONSTRAINT fm_enterprise_pkey PRIMARY KEY (enterprise_oid_c);
ALTER TABLE fm_escalation_schedule
    ADD CONSTRAINT fm_escalation_schedule_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE fm_event
    ADD CONSTRAINT fm_event_pkey PRIMARY KEY (event_oid_c);
ALTER TABLE fm_trap
    ADD CONSTRAINT fm_trap_pkey PRIMARY KEY (probe_id_c, trap_id_c);
ALTER TABLE fm_v3_config
    ADD CONSTRAINT fm_v3_config_pkey PRIMARY KEY (username_c, engine_id_c);
ALTER TABLE topo_graph_schedule
    ADD CONSTRAINT graph_schedule_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE login_t
    ADD CONSTRAINT login_pkey PRIMARY KEY (login_name_c);
ALTER TABLE msp_authentication
    ADD CONSTRAINT msp_authentication_pkey PRIMARY KEY (id_c);
ALTER TABLE msp_call_queue
    ADD CONSTRAINT msp_call_queue_pkey PRIMARY KEY (call_id_c);
ALTER TABLE msp_schedule
    ADD CONSTRAINT msp_schedule_t_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE org_view_relation
    ADD CONSTRAINT org_view_relation_pkey PRIMARY KEY (org_name_c, view_id_c);
ALTER TABLE user_organization
    ADD CONSTRAINT organization_pkey PRIMARY KEY (name_c);
ALTER TABLE pm_remote_host
    ADD CONSTRAINT pk PRIMARY KEY (host_id_c);
ALTER TABLE pm_baseline
    ADD CONSTRAINT pm_baseline_pkey PRIMARY KEY (metrics_id_c);
ALTER TABLE pm_database_result
    ADD CONSTRAINT pm_database_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_database_result
    ADD CONSTRAINT pm_database_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_dependency
    ADD CONSTRAINT pm_dependency_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE pm_directory_result
    ADD CONSTRAINT pm_directory_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_directory_result
    ADD CONSTRAINT pm_directory_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_dns_result
    ADD CONSTRAINT pm_dns_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_dns_result
    ADD CONSTRAINT pm_dns_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_email_result
    ADD CONSTRAINT pm_email_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_email_result
    ADD CONSTRAINT pm_email_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_expression
    ADD CONSTRAINT pm_expression_pkey PRIMARY KEY (expression_name_c);
ALTER TABLE pm_expression_vars
    ADD CONSTRAINT pm_expression_vars_pkey PRIMARY KEY (expression_name_c, var_name_c);
ALTER TABLE pm_external_executor_result
    ADD CONSTRAINT pm_external_executor_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_external_executor_result
    ADD CONSTRAINT pm_external_executor_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_file_result
    ADD CONSTRAINT pm_file_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_file_result
    ADD CONSTRAINT pm_file_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_ftp_result
    ADD CONSTRAINT pm_ftp_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_ftp_result
    ADD CONSTRAINT pm_ftp_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_group
    ADD CONSTRAINT pm_group_group_name_key UNIQUE (group_name_c);
ALTER TABLE pm_group
    ADD CONSTRAINT pm_group_pkey PRIMARY KEY (group_id_c);
ALTER TABLE pm_http_result
    ADD CONSTRAINT pm_http_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_http_result
    ADD CONSTRAINT pm_http_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_ldap_result
    ADD CONSTRAINT pm_ldap_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_ldap_result
    ADD CONSTRAINT pm_ldap_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_log_file_result
    ADD CONSTRAINT pm_log_file_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_log_file_result
    ADD CONSTRAINT pm_log_file_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_metrics
    ADD CONSTRAINT pm_metrics_pkey PRIMARY KEY (metrics_id_c);
ALTER TABLE pm_metrics
    ADD CONSTRAINT pm_metrics_schedule_id_key UNIQUE (schedule_id_c, result_type_id_c);
ALTER TABLE pm_metrics_timebucket
    ADD CONSTRAINT pm_metrics_timebucket_pkey PRIMARY KEY (metrics_timebucket_id_c);
ALTER TABLE pm_ping_result
    ADD CONSTRAINT pm_ping_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_ping_result
    ADD CONSTRAINT pm_ping_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_port_result
    ADD CONSTRAINT pm_port_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_port_result
    ADD CONSTRAINT pm_port_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_protocol_query
    ADD CONSTRAINT pm_protocol_query_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE pm_radius_result
    ADD CONSTRAINT pm_radius_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_radius_result
    ADD CONSTRAINT pm_radius_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_schedule_host
    ADD CONSTRAINT pm_schedule_host_pkey PRIMARY KEY (schedule_host_id_c);
ALTER TABLE pm_schedule
    ADD CONSTRAINT pm_schedule_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE pm_schedule
    ADD CONSTRAINT pm_schedule_schedule_name_key UNIQUE (schedule_name_c);
ALTER TABLE pm_schedule_timebucket
    ADD CONSTRAINT pm_schedule_timebucket_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE pm_snapshot
    ADD CONSTRAINT pm_snapshot_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE pm_snmp_result
    ADD CONSTRAINT pm_snmp_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_snmp_result
    ADD CONSTRAINT pm_snmp_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_ssh_result
    ADD CONSTRAINT pm_ssh_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_ssh_result
    ADD CONSTRAINT pm_ssh_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_statistical_threshold
    ADD CONSTRAINT pm_statistical_threshold_pkey PRIMARY KEY (metrics_id_c, is_clear_alarm_c, severity_id_c);
ALTER TABLE pm_telnet_result
    ADD CONSTRAINT pm_telnet_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_telnet_result
    ADD CONSTRAINT pm_telnet_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE pm_fixed_threshold
    ADD CONSTRAINT pm_threshold_pkey PRIMARY KEY (metrics_timebucket_id_c, is_clear_alarm_c, severity_id_c);
ALTER TABLE pm_threshold_result
    ADD CONSTRAINT pm_threshold_result_pkey PRIMARY KEY (schedule_host_id_c, result_type_id_c, is_clear_alarm_c, severity_id_c);
ALTER TABLE pm_timebucket_item
    ADD CONSTRAINT pm_timebucket_pkey PRIMARY KEY (timebucket_item_id_c);
ALTER TABLE pm_timebucket
    ADD CONSTRAINT pm_timebucket_pkey1 PRIMARY KEY (timebucket_id_c);
ALTER TABLE pm_timebucket
    ADD CONSTRAINT pm_timebucket_timebucket_name_c_key UNIQUE (timebucket_name_c);
ALTER TABLE pm_wmi_result
    ADD CONSTRAINT pm_wmi_result_pkey PRIMARY KEY (result_id_c);
ALTER TABLE pm_wmi_result
    ADD CONSTRAINT pm_wmi_result_schedule_host_id_c_key UNIQUE (schedule_host_id_c, run_date_time_c, result_type_id_c);
ALTER TABLE msp_probe
    ADD CONSTRAINT probe_id PRIMARY KEY (probe_id_c);
ALTER TABLE properties_t
    ADD CONSTRAINT properties_t_pkey PRIMARY KEY (name_c);
ALTER TABLE rp_schedule
    ADD CONSTRAINT rp_schedule_pkey PRIMARY KEY (schedule_id_c);
ALTER TABLE rp_schedule
    ADD CONSTRAINT rp_schedule_schedule_name_key UNIQUE (schedule_name_c);
ALTER TABLE systemstatus_t
    ADD CONSTRAINT systemstatus_pkey PRIMARY KEY (name_c);
ALTER TABLE topo_graphdata
    ADD CONSTRAINT topo_graphdata_pkey PRIMARY KEY (domain_c, name_c);
ALTER TABLE topo_ping_result
    ADD CONSTRAINT topo_ping_result_pkey PRIMARY KEY (ip_c, time_c, probe_id_c);
ALTER TABLE user_org_relation
    ADD CONSTRAINT user_org_relation_pkey PRIMARY KEY (username_c, org_name_c);
ALTER TABLE user_properties
    ADD CONSTRAINT user_properties_pkey PRIMARY KEY (user_name_c, name_c);
ALTER TABLE topo_vlan_ports
    ADD CONSTRAINT vlan_ports_pkey PRIMARY KEY (bridgeaddress_c, portnumber_c, vlanid_c);
ALTER TABLE topo_vlan_switches
    ADD CONSTRAINT vlan_switches_pkey PRIMARY KEY (bridgeaddress_c);
CREATE INDEX db_pid_index ON pm_database_result  (period_index_c);
CREATE INDEX db_sid_index ON pm_database_result  (schedule_host_id_c);
CREATE INDEX eventoid_index ON fm_event  (event_oid_c);
CREATE INDEX ext_pid_index ON pm_external_executor_result  (period_index_c);
CREATE INDEX ext_sid_index ON pm_external_executor_result  (schedule_host_id_c);
CREATE INDEX fki_trap ON fm_varbind  (trap_id_c);
CREATE INDEX http_pid_index ON pm_http_result  (period_index_c);
CREATE INDEX http_sid_index ON pm_http_result  (schedule_host_id_c);
CREATE INDEX periodid_index ON pm_ping_result  (period_index_c);
CREATE INDEX schedule_hid_index ON pm_ping_result  (schedule_host_id_c);
CREATE INDEX snmp_periodid_index ON pm_snmp_result  (period_index_c);
CREATE INDEX snmp_schedule_hid_index ON pm_snmp_result  (schedule_host_id_c);
CREATE INDEX telnet_pid_index ON pm_telnet_result  (period_index_c);
CREATE INDEX telnet_sid_index ON pm_telnet_result  (schedule_host_id_c);
CREATE INDEX trapid_index ON fm_trap  (trap_id_c);
ALTER TABLE fm_event
    ADD CONSTRAINT fm_event_enterprise_oid_c_fkey FOREIGN KEY (enterprise_oid_c) REFERENCES fm_enterprise(enterprise_oid_c) ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE fm_general_time_email
    ADD CONSTRAINT fm_general_time_email_timebucket_id_c_fkey FOREIGN KEY (timebucket_id_c) REFERENCES pm_timebucket(timebucket_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE fm_varbind
    ADD CONSTRAINT fm_varbind_probe_id_c_fkey1 FOREIGN KEY (probe_id_c, trap_id_c) REFERENCES fm_trap(probe_id_c, trap_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE org_view_relation
    ADD CONSTRAINT org_view_relation_org_name_fkey FOREIGN KEY (org_name_c) REFERENCES user_organization(name_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_baseline
    ADD CONSTRAINT pm_baseline_metrics_id_c_fkey FOREIGN KEY (metrics_id_c) REFERENCES pm_metrics(metrics_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_dependency
    ADD CONSTRAINT pm_dependency_schedule_id_c_fkey FOREIGN KEY (schedule_id_c) REFERENCES pm_schedule(schedule_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_expression_vars
    ADD CONSTRAINT pm_expression_vars_expression_name_c_fkey FOREIGN KEY (expression_name_c) REFERENCES pm_expression(expression_name_c) ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE pm_metrics
    ADD CONSTRAINT pm_metrics_schedule_id_fkey FOREIGN KEY (schedule_id_c) REFERENCES pm_schedule(schedule_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_metrics_timebucket
    ADD CONSTRAINT pm_metrics_timebucket_metrics_id_c_fkey FOREIGN KEY (metrics_id_c) REFERENCES pm_metrics(metrics_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_metrics_timebucket
    ADD CONSTRAINT pm_metrics_timebucket_timebucket_id_c_fkey FOREIGN KEY (timebucket_id_c) REFERENCES pm_timebucket(timebucket_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_protocol_query
    ADD CONSTRAINT pm_protocol_query_schedule_id_fkey FOREIGN KEY (schedule_id_c) REFERENCES pm_schedule(schedule_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_schedule
    ADD CONSTRAINT pm_schedule_group_id_fkey FOREIGN KEY (group_id_c) REFERENCES pm_group(group_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_schedule_host
    ADD CONSTRAINT pm_schedule_host_schedule_id_c_fkey FOREIGN KEY (schedule_id_c) REFERENCES pm_schedule(schedule_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_schedule_timebucket
    ADD CONSTRAINT pm_schedule_timebucket_schedule_id_fkey FOREIGN KEY (schedule_id_c) REFERENCES pm_schedule(schedule_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_schedule_timebucket
    ADD CONSTRAINT pm_schedule_timebucket_timebucket_id_c_fkey FOREIGN KEY (timebucket_id_c) REFERENCES pm_timebucket(timebucket_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_statistical_threshold
    ADD CONSTRAINT pm_statistical_threshold_metrics_id_c_fkey FOREIGN KEY (metrics_id_c) REFERENCES pm_metrics(metrics_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_fixed_threshold
    ADD CONSTRAINT pm_threshold_metrics_timebucket_id_fkey FOREIGN KEY (metrics_timebucket_id_c) REFERENCES pm_metrics_timebucket(metrics_timebucket_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_timebucket_item
    ADD CONSTRAINT pm_timebucket_item_timebucket_id_c_fkey FOREIGN KEY (timebucket_id_c) REFERENCES pm_timebucket(timebucket_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE pm_snapshot
    ADD CONSTRAINT schedule_id FOREIGN KEY (schedule_id_c) REFERENCES pm_schedule(schedule_id_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE user_org_relation
    ADD CONSTRAINT user_org_relation_org_name_c_fkey FOREIGN KEY (org_name_c) REFERENCES user_organization(name_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE user_org_relation
    ADD CONSTRAINT user_org_relation_username_c_fkey FOREIGN KEY (username_c) REFERENCES login_t(login_name_c) ON UPDATE NO ACTION ON DELETE CASCADE;
ALTER TABLE user_properties
    ADD CONSTRAINT user_properties_user_name_c_fkey FOREIGN KEY (user_name_c) REFERENCES login_t(login_name_c) ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE topo_vlan_ports
    ADD CONSTRAINT vlan_ports_bridgeaddress_fkey FOREIGN KEY (bridgeaddress_c) REFERENCES topo_vlan_switches(bridgeaddress_c) ON UPDATE CASCADE ON DELETE CASCADE;
--special in SqlServer2000
alter table pm_schedule_host drop column ip_address_c
alter table pm_schedule_host add ip_address_c varchar(8000)
