[NewFeature] Support ExternalCatalogResource to simplify external table manage operation. (#4559)
1. Add new Resource ExternalCatalogResource
```
create external resource "odbc"
properties
(
"type" = "external_catalog", (required)
"user" = "test",(required)
"password" = "", (required)
"host" = "192.168.0.1", (required)
"port" = "8086", (required)
"type" = "oracle" , (optinal,only odbc exteranl table use)
"driver" = "Oracle 19 ODBC driver" (optional,only odbc exteranl table use)
)
```
2.After create ExternalCatalogResource, can create external table like:
```
CREATE TABLE `test_mysql` (
`k1` tinyint(4) NOT NULL,
`k2` smallint(6) NOT NULL,
`k3` int(11) NOT NULL,
`k4` bigint(20) NOT NULL,
`k5` decimal(9,3) NOT NULL,
`k6` char(5) NOT NULL,
`k10` date DEFAULT NULL,
`k11` datetime DEFAULT NULL,
`k7` varchar(20) NOT NULL,
`k8` double NOT NULL,
`k9` float NOT NULL
) ENGINE=MYSQL
PROPERTIES (
"external_catalog_resource" = "odbc",
"database" = "test",
"table" = "test"
);
```