GO Online Toolset
home
search
To Boss

sql to esMapping tool
new
39  |   |   |  3

feature introduction

  1. Table creation sql to json supporting multiple databases, including (pg, oracle, mysql) and other databases;table-building statements,table-building statements,table-building statements(important statements are said 3 times)
  2. When converting sql, you need to confirm whether you need to switch the processing type. Three processing methods are temporarily supported (normal,postgresql,oracle). Default:normal.
  3. Support custom filtering of unwanted fields. Multiple fields are separated by ,.

example

mysql table statement

CREATE TABLE if not exists user (
    id int NOT NULL AUTO_INCREMENT,
    name varchar(10) NOT NULL COMMENT 'name ',
    gender tinyint NOT NULL DEFAULT 0 COMMENT 'Gender 0 -unknown 1 -male 2 -female ',
    age int NOT NULL COMMENT 'age ',
    created_date datetime DEFAULT CURRENT_TIMESTAMP,
    updated_date datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (id)
);

After treatment

{
  "mappings": {
    "properties": {
      "id": {
        "type": "keyword"
      },
      "name": {
        "fields": {
          "keyword": {
            "ignore_above": 256,
            "type": "keyword"
          }
        },
        "meta": {
          "description": "name"
        },
        "type": "text"
      },
      "gender": {
        "meta": {
          "description": "Gender 0 -unknown 1 -male 2 -female"
        },
        "type": "integer"
      },
      "age": {
        "meta": {
          "description": "age"
        },
        "type": "keyword"
      },
      "created_date": {
        "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis",
        "type": "date"
      },
      "updated_date": {
        "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis",
        "type": "date"
      }
    }
  }
}

pgsql table statement

CREATE TABLE if not exists user (
    id character varying (32) NOT NULL DEFAULT sys_guid ()
    name character varying (10) NOT NULL
    gender tinyint NOT NULL
    age tinyint NOT NULL
    created_date timestamp without time zone DEFAULT now ()
    updated_date timestamp without time zone DEFAULT now ()
    CONSTRAINT user_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE user IS 'user Table'
COMMENT ON COLUMN user.id IS 'primary key'
COMMENT ON COLUMN user.name IS 'name'
COMMENT ON COLUMN user.gender IS 'Sex 0-unknown 1-male 2-female'
COMMENT ON COLUMN user.age IS 'age'
COMMENT ON COLUMN user.created_date IS 'creation time'
COMMENT ON COLUMN user.updated_date IS 'update time'

After treatment

{
  "mappings": {
    "properties": {
      "id": {
        "type": "keyword"
      },
      "name": {
        "fields": {
          "keyword": {
            "ignore_above": 256,
            "type": "keyword"
          }
        },
        "meta": {
          "description": "name"
        },
        "type": "text"
      },
      "gender": {
        "meta": {
          "description": "Gender 0 -unknown 1 -male 2 -female"
        },
        "type": "integer"
      },
      "age": {
        "meta": {
          "description": "age"
        },
        "type": "keyword"
      },
      "created_date": {
        "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis",
        "type": "date"
      },
      "updated_date": {
        "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis",
        "type": "date"
      }
    }
  }
}

oracle table statement

CREATE TABLE if not exists user (
    id character varying (32) NOT NULL DEFAULT sys_guid ()
    name character varying (10) NOT NULL
    gender tinyint NOT NULL
    age tinyint NOT NULL
    created_date date default sysdate
    updated_date date default sysdate
    CONSTRAINT user_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE user IS 'user Table'
COMMENT ON COLUMN user.id IS 'primary key'
COMMENT ON COLUMN user.name IS 'name'
COMMENT ON COLUMN user.gender IS 'Sex 0-unknown 1-male 2-female'
COMMENT ON COLUMN user.age IS 'age'
COMMENT ON COLUMN user.created_date IS 'creation time'
COMMENT ON COLUMN user.updated_date IS 'update time'

After treatment

{
  "mappings": {
    "properties": {
      "id": {
        "type": "keyword"
      },
      "name": {
        "fields": {
          "keyword": {
            "ignore_above": 256,
            "type": "keyword"
          }
        },
        "meta": {
          "description": "name"
        },
        "type": "text"
      },
      "gender": {
        "meta": {
          "description": "Gender 0 -unknown 1 -male 2 -female"
        },
        "type": "integer"
      },
      "age": {
        "meta": {
          "description": "age"
        },
        "type": "keyword"
      },
      "created_date": {
        "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis",
        "type": "date"
      },
      "updated_date": {
        "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis",
        "type": "date"
      }
    }
  }
}