hubble支持PostgreSQL协议和大多数 PostgreSQL语法,这意味着在 PostgreSQL上构建的现有应用程序通常可以迁移到hubble。
[root@ty-bj01-gf01 opt]#mssql-scripter -S 192.168.100.123 -d test -U sa -P 1qaz2WSX --display-progress > ss.sql
导出后的sql文件,包括了用户所拥有的的权限,建表语句、主键、索引、表之间的主外键关系,视图等一些信息。但是对应到hubble上的话仍然需要修改,注意事项包括:
表的主键和表之间的主外键关系在create table
语句中创建。
sqlserver数据类型转换成hubble的数据类型。
sqlserver数据类型 | hubble数据类型 |
---|---|
INT | INT |
NVARCHAR(n) | VARCHAR(n) |
VARCHAR(n) | VARCHAR(n) |
NCHAR(n) | CHAR(n) |
CHAR(n) | CHAR(n) |
TEXT | TEXT |
TIME | TIME |
DATE | DATE |
DATETIME | DATETIME |
DATETIMEOFFSET | TIMESTAMP WITH TIME ZONE |
BIGINT | BIGINT |
DECIMAL | NUMERIC |
TIMESTAMP(p) | TIMESTAMP |
DATETIME2 | TIMESTAMP |
SMALLTIMESTAMP(p) | TIMESTAMP |
FLOAT(n) | DECIMAL(n) |
MONEY | NUMERIC |
SMALLMONEY | NUMERIC |
TINYINT | SMALLINT |
IMAGE | BYTE |
UNIQUEIDENTIFIER | UUID |
XML | JSON |
sqlserver | hubble |
---|---|
leg() | length |
isnull() | coalesce() |
ltirm() | tirm() |
rtirm() | tirm() |
str1+str2 | str1 |
exists() | exists() |
lower() | lower() |
upper() | upper() |
round(age1,0) | round(age1) |
floor() | floor() |
ceil() | ceil() |
getdate() | now() |
dateadd() | now () +interval '1 months' |
sqlserver的文件导出建议使用dbeaver工具,导出的数据不需要改动
create table cust_info(cust_no varchar(40) primary key,cust_name varchar(40) ,cust_card_no varchar(20),age DECIMAL);
create table trans (cust_id varchar(20) primary key,cust_no varchar(30),trans_date timestamp,trans_aml DECIMAL(10,2));
[hubble@poc-hubble01 ~]$ cd /data_shares/cus
[hubble@poc-hubble01 cus]$ ls
cust_info.csv trans.csv
IMPORT into cust_info ( cust_no ,cust_name, cust_card_no, age
) CSV DATA ( 'nodelocal://1/cus/cust_info.csv' )
WITH
DELIMITER = ','
;
job_id | status | fraction_completed | rows | index_entries | bytes
---------------------+-----------+--------------------+------+---------------+--------
748594745725714433 | succeeded | 1 | 2 | 0 | 114
IMPORT into trans ( cust_id ,cust_no,trans_date, trans_aml
) CSV DATA ( 'nodelocal://1/cus/trans.csv' )
WITH
DELIMITER = ','
;
job_id | status | fraction_completed | rows | index_entries | bytes
---------------------+-----------+--------------------+------+---------------+--------
748595201171456001 | succeeded | 1 | 2 | 0 | 102