dmr

package
v0.0.0-...-1755603 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2023 License: Apache-2.0 Imports: 38 Imported by: 0

Documentation

Overview

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

* Copyright (c) 2000-2018, 达梦数据库有限公司. * All rights reserved.

Index

Constants

View Source
const (
	Dm_build_330 = 8192
	Dm_build_331 = 2 * time.Second
)
View Source
const (
	PROP_NAME_SORT            = "sort"
	PROP_NAME_SORT_FIELD      = "field"
	PROP_NAME_SORT_TYPE       = "direction"
	PROP_NAME_SEARCH          = "search"
	PROP_NAME_PAGE_NUM        = "pageNum"
	PROP_NAME_PAGE_SIZE       = "pageSize"
	PROP_NAME_PAGE_COUNT      = "pageCount"
	PROP_NAME_TOTAL_ROW_COUNT = "totalRowCount"
	PROP_NAME_FLUSH_FREQ      = "flushFreq"
	PROP_NAME_DATASOURCE_ID   = "dataSourceId"
	PROP_NAME_SQL_ID          = "sqlId"

	URL_SQL               = "sql"
	URL_SQL_DETAIL        = "sqlDetail"
	URL_DATASOURCE        = "dataSource"
	URL_DATASOURCE_DETAIL = "dataSourceDetail"

	RESULT_CODE_SUCCESS = 1
	RESULT_CODE_ERROR   = -1
	DEFAULT_PAGE_NUM    = 1
	DEFAULT_PAGE_SIZE   = int(INT32_MAX)
	DEFAULT_ORDER_TYPE  = "asc"
	DEFAULT_ORDERBY     = "DataSourceId"
)
View Source
const (
	TimeZoneKey              = "timeZone"
	EnRsCacheKey             = "enRsCache"
	RsCacheSizeKey           = "rsCacheSize"
	RsRefreshFreqKey         = "rsRefreshFreq"
	LoginPrimary             = "loginPrimary"
	LoginModeKey             = "loginMode"
	LoginStatusKey           = "loginStatus"
	LoginDscCtrlKey          = "loginDscCtrl"
	SwitchTimesKey           = "switchTimes"
	SwitchIntervalKey        = "switchInterval"
	EpSelectorKey            = "epSelector"
	PrimaryKey               = "primaryKey"
	KeywordsKey              = "keywords"
	CompressKey              = "compress"
	CompressIdKey            = "compressId"
	LoginEncryptKey          = "loginEncrypt"
	CommunicationEncryptKey  = "communicationEncrypt"
	DirectKey                = "direct"
	Dec2DoubleKey            = "dec2double"
	RwSeparateKey            = "rwSeparate"
	RwPercentKey             = "rwPercent"
	RwAutoDistributeKey      = "rwAutoDistribute"
	CompatibleModeKey        = "compatibleMode"
	CompatibleOraKey         = "comOra"
	CipherPathKey            = "cipherPath"
	DoSwitchKey              = "doSwitch"
	ClusterKey               = "cluster"
	LanguageKey              = "language"
	DbAliveCheckFreqKey      = "dbAliveCheckFreq"
	RwStandbyRecoverTimeKey  = "rwStandbyRecoverTime"
	LogLevelKey              = "logLevel"
	LogDirKey                = "logDir"
	LogBufferPoolSizeKey     = "logBufferPoolSize"
	LogBufferSizeKey         = "logBufferSize"
	LogFlusherQueueSizeKey   = "logFlusherQueueSize"
	LogFlushFreqKey          = "logFlushFreq"
	StatEnableKey            = "statEnable"
	StatDirKey               = "statDir"
	StatFlushFreqKey         = "statFlushFreq"
	StatHighFreqSqlCountKey  = "statHighFreqSqlCount"
	StatSlowSqlCountKey      = "statSlowSqlCount"
	StatSqlMaxCountKey       = "statSqlMaxCount"
	StatSqlRemoveModeKey     = "statSqlRemoveMode"
	AddressRemapKey          = "addressRemap"
	UserRemapKey             = "userRemap"
	ConnectTimeoutKey        = "connectTimeout"
	LoginCertificateKey      = "loginCertificate"
	UrlKey                   = "url"
	HostKey                  = "host"
	PortKey                  = "port"
	UserKey                  = "user"
	PasswordKey              = "password"
	RwStandbyKey             = "rwStandby"
	IsCompressKey            = "isCompress"
	RwHAKey                  = "rwHA"
	RwIgnoreSqlKey           = "rwIgnoreSql"
	AppNameKey               = "appName"
	OsNameKey                = "osName"
	MppLocalKey              = "mppLocal"
	SocketTimeoutKey         = "socketTimeout"
	SessionTimeoutKey        = "sessionTimeout"
	ContinueBatchOnErrorKey  = "continueBatchOnError"
	BatchAllowMaxErrorsKey   = "batchAllowMaxErrors"
	EscapeProcessKey         = "escapeProcess"
	AutoCommitKey            = "autoCommit"
	MaxRowsKey               = "maxRows"
	RowPrefetchKey           = "rowPrefetch"
	BufPrefetchKey           = "bufPrefetch"
	LobModeKey               = "LobMode"
	StmtPoolSizeKey          = "StmtPoolSize"
	IgnoreCaseKey            = "ignoreCase"
	AlwayseAllowCommitKey    = "AlwayseAllowCommit"
	BatchTypeKey             = "batchType"
	BatchNotOnCallKey        = "batchNotOnCall"
	IsBdtaRSKey              = "isBdtaRS"
	ClobAsStringKey          = "clobAsString"
	SslCertPathKey           = "sslCertPath"
	SslKeyPathKey            = "sslKeyPath"
	SslFilesPathKey          = "sslFilesPath"
	KerberosLoginConfPathKey = "kerberosLoginConfPath"
	UKeyNameKey              = "uKeyName"
	UKeyPinKey               = "uKeyPin"
	ColumnNameUpperCaseKey   = "columnNameUpperCase"
	ColumnNameCaseKey        = "columnNameCase"
	DatabaseProductNameKey   = "databaseProductName"
	OsAuthTypeKey            = "osAuthType"
	SchemaKey                = "schema"

	TIME_ZONE_DEFAULT int16 = 480

	DO_SWITCH_OFF             int32 = 0
	DO_SWITCH_WHEN_CONN_ERROR int32 = 1
	DO_SWITCH_WHEN_EP_RECOVER int32 = 2

	CLUSTER_TYPE_NORMAL int32 = 0
	CLUSTER_TYPE_RW     int32 = 1
	CLUSTER_TYPE_DW     int32 = 2
	CLUSTER_TYPE_DSC    int32 = 3
	CLUSTER_TYPE_MPP    int32 = 4

	EP_STATUS_OK    int32 = 1
	EP_STATUS_ERROR int32 = 2

	LOGIN_MODE_PRIMARY_FIRST int32 = 0

	LOGIN_MODE_PRIMARY_ONLY int32 = 1

	LOGIN_MODE_STANDBY_ONLY int32 = 2

	LOGIN_MODE_STANDBY_FIRST int32 = 3

	LOGIN_MODE_NORMAL_FIRST int32 = 4

	SERVER_MODE_NORMAL int32 = 0

	SERVER_MODE_PRIMARY int32 = 1

	SERVER_MODE_STANDBY int32 = 2

	SERVER_STATUS_MOUNT int32 = 3

	SERVER_STATUS_OPEN int32 = 4

	SERVER_STATUS_SUSPEND int32 = 5

	COMPATIBLE_MODE_ORACLE int = 1

	COMPATIBLE_MODE_MYSQL int = 2

	LANGUAGE_CN int = 0

	LANGUAGE_EN int = 1

	COLUMN_NAME_NATURAL_CASE = 0

	COLUMN_NAME_UPPER_CASE = 1

	COLUMN_NAME_LOWER_CASE = 2
)
View Source
const (
	XDEC_MAX_PREC int = 38
	XDEC_SIZE         = 21

	FLAG_ZERO     int = 0x80
	FLAG_POSITIVE int = 0xC1
	FLAG_NEGTIVE  int = 0x3E
	EXP_MAX       int = 0xFF - 1 - FLAG_POSITIVE
	EXP_MIN       int = FLAG_NEGTIVE + 1 - 0x7F

	NUM_POSITIVE int = 1
	NUM_NEGTIVE  int = 101
)
View Source
const (
	LOADPREC_DEFAULT = 2

	LOADPREC_MAX = 9

	SECDPREC_DEFAULT = 6

	SECDPREC_MAX = 6

	QUA_D byte = 3

	QUA_DH byte = 4

	QUA_DHM byte = 5

	QUA_DHMS byte = 6

	QUA_H byte = 7

	QUA_HM byte = 8

	QUA_HMS byte = 9

	QUA_M byte = 10

	QUA_MS byte = 11

	QUA_S byte = 12
)
View Source
const (
	QUA_Y  = 0
	QUA_YM = 1
	QUA_MO = 2
)
View Source
const (
	BIND_IN byte = 0x01

	BIND_OUT byte = 0x10
)
View Source
const (
	Seconds_1900_1970 = 2209017600

	OFFSET_YEAR = 0

	OFFSET_MONTH = 1

	OFFSET_DAY = 2

	OFFSET_HOUR = 3

	OFFSET_MINUTE = 4

	OFFSET_SECOND = 5

	OFFSET_MILLISECOND = 6

	OFFSET_TIMEZONE = 7

	DT_LEN = 8

	INVALID_VALUE = int(INT32_MIN)
)
View Source
const (
	STATUS_VALID_TIME = 20 * time.Second // ms

	// sort 值
	SORT_SERVER_MODE_INVALID = -1 // 不允许连接的模式

	SORT_SERVER_NOT_ALIVE = -2 // 站点无法连接

	SORT_UNKNOWN = INT32_MAX // 站点还未连接过,模式未知

	SORT_NORMAL = 30

	SORT_PRIMARY = 20

	SORT_STANDBY = 10

	// OPEN>MOUNT>SUSPEND
	SORT_OPEN = 3

	SORT_MOUNT = 2

	SORT_SUSPEND = 1
)
View Source
const (
	TYPE_WELL_DISTRIBUTE = 0
	TYPE_HEAD_FIRST      = 1
)
View Source
const (
	IGNORE_TARGET_LENGTH int32 = -1

	IGNORE_TARGET_SCALE int32 = -1

	IGNORE_TARGET_TYPE = INT32_MIN

	TYPE_FLAG_UNKNOWN byte = 0 // 未知类型

	TYPE_FLAG_EXACT byte = 1 // 精确类型

	TYPE_FLAG_RECOMMEND byte = 2 // 推荐类型

	IO_TYPE_IN byte = 0

	IO_TYPE_OUT byte = 1

	IO_TYPE_INOUT byte = 2
)
View Source
const (
	LOB_FLAG_BYTE = 0
	LOB_FLAG_CHAR = 1

	LOB_IN_ROW  = 0x1
	LOB_OFF_ROW = 0x2

	NBLOB_HEAD_IN_ROW_FLAG = 0
	NBLOB_HEAD_BLOBID      = NBLOB_HEAD_IN_ROW_FLAG + BYTE_SIZE
	NBLOB_HEAD_BLOB_LEN    = NBLOB_HEAD_BLOBID + DDWORD_SIZE

	NBLOB_HEAD_OUTROW_GROUPID = NBLOB_HEAD_BLOB_LEN + ULINT_SIZE
	NBLOB_HEAD_OUTROW_FILEID  = NBLOB_HEAD_OUTROW_GROUPID + USINT_SIZE
	NBLOB_HEAD_OUTROW_PAGENO  = NBLOB_HEAD_OUTROW_FILEID + USINT_SIZE

	NBLOB_EX_HEAD_TABLE_ID   = NBLOB_HEAD_OUTROW_PAGENO + ULINT_SIZE
	NBLOB_EX_HEAD_COL_ID     = NBLOB_EX_HEAD_TABLE_ID + ULINT_SIZE
	NBLOB_EX_HEAD_ROW_ID     = NBLOB_EX_HEAD_COL_ID + USINT_SIZE
	NBLOB_EX_HEAD_FPA_GRPID  = NBLOB_EX_HEAD_ROW_ID + LINT64_SIZE
	NBLOB_EX_HEAD_FPA_FILEID = NBLOB_EX_HEAD_FPA_GRPID + USINT_SIZE
	NBLOB_EX_HEAD_FPA_PAGENO = NBLOB_EX_HEAD_FPA_FILEID + USINT_SIZE
	NBLOB_EX_HEAD_SIZE       = NBLOB_EX_HEAD_FPA_PAGENO + ULINT_SIZE

	NBLOB_OUTROW_HEAD_SIZE = NBLOB_HEAD_OUTROW_PAGENO + ULINT_SIZE

	NBLOB_INROW_HEAD_SIZE = NBLOB_HEAD_BLOB_LEN + ULINT_SIZE
)
View Source
const (
	ParamDataEnum_Null = 0
	/**
	 * 只有大字段才有行内数据、行外数据的概念
	 */
	ParamDataEnum_OFF_ROW = 1
)
View Source
const (
	MAX_FILE_SIZE = 100 * 1024 * 1024
	FLUSH_SIZE    = 32 * 1024
)
View Source
const (
	Dm_build_597 = "7.6.0.0"

	Dm_build_598 = "7.0.0.9"

	Dm_build_599 = "8.0.0.73"

	Dm_build_600 = "7.1.2.128"

	Dm_build_601 = "7.1.5.144"

	Dm_build_602 = "7.1.6.123"

	Dm_build_603 = 2

	Dm_build_604 = 32768 - 128

	Dm_build_605 = 0x20000000

	Dm_build_606 int16 = 1

	Dm_build_607 int16 = 2

	Dm_build_608 int16 = 3

	Dm_build_609 int16 = 4

	Dm_build_610 int16 = 5

	Dm_build_611 int16 = 6

	Dm_build_612 int16 = 7

	Dm_build_613 int16 = 8

	Dm_build_614 int16 = 9

	Dm_build_615 int16 = 13

	Dm_build_616 int16 = 14

	Dm_build_617 int16 = 15

	Dm_build_618 int16 = 17

	Dm_build_619 int16 = 21

	Dm_build_620 int16 = 24

	Dm_build_621 int16 = 27

	Dm_build_622 int16 = 29

	Dm_build_623 int16 = 30

	Dm_build_624 int16 = 31

	Dm_build_625 int16 = 32

	Dm_build_626 int16 = 44

	Dm_build_627 int16 = 52

	Dm_build_628 int16 = 60

	Dm_build_629 int16 = 71

	Dm_build_630 int16 = 90

	Dm_build_631 int16 = 91

	Dm_build_632 int16 = 200

	Dm_build_633 = 64

	Dm_build_634 = 20

	Dm_build_635 = 0

	Dm_build_636 = 4

	Dm_build_637 = 6

	Dm_build_638 = 10

	Dm_build_639 = 14

	Dm_build_640 = 18

	Dm_build_641 = 19

	Dm_build_642 = 128

	Dm_build_643 = 256

	Dm_build_644 = 0xffff

	Dm_build_645 int32 = 2

	Dm_build_646 int32 = 5

	Dm_build_647 = -1

	Dm_build_648 uint16 = 0xFFFE

	Dm_build_649 uint16 = uint16(Dm_build_648 - 3)

	Dm_build_650 uint16 = Dm_build_648

	Dm_build_651 int32 = 0xFFFF

	Dm_build_652 int32 = 0x80

	Dm_build_653 byte = 0x60

	Dm_build_654 uint16 = uint16(Dm_build_650)

	Dm_build_655 uint16 = uint16(Dm_build_651)

	Dm_build_656 int16 = 0x00

	Dm_build_657 int16 = 0x03

	Dm_build_658 int32 = 0x80

	Dm_build_659 byte = 0

	Dm_build_660 byte = 1

	Dm_build_661 byte = 2

	Dm_build_662 byte = 3

	Dm_build_663 byte = 4

	Dm_build_664 byte = Dm_build_659

	Dm_build_665 int = 10

	Dm_build_666 int32 = 32

	Dm_build_667 int32 = 65536

	Dm_build_668 byte = 0

	Dm_build_669 byte = 1

	Dm_build_670 int32 = 0x00000000

	Dm_build_671 int32 = 0x00000020

	Dm_build_672 int32 = 0x00000040

	Dm_build_673 int32 = 0x00000FFF

	Dm_build_674 int32 = 0

	Dm_build_675 int32 = 1

	Dm_build_676 int32 = 2

	Dm_build_677 int32 = 3

	Dm_build_678 = 8192

	Dm_build_679 = 1

	Dm_build_680 = 2

	Dm_build_681 = 0

	Dm_build_682 = 0

	Dm_build_683 = 1

	Dm_build_684 = -1

	Dm_build_685 int16 = 0

	Dm_build_686 int16 = 1

	Dm_build_687 int16 = 2

	Dm_build_688 int16 = 3

	Dm_build_689 int16 = 4

	Dm_build_690 int16 = 127

	Dm_build_691 int16 = Dm_build_690 + 20

	Dm_build_692 int16 = Dm_build_690 + 21

	Dm_build_693 int16 = Dm_build_690 + 22

	Dm_build_694 int16 = Dm_build_690 + 24

	Dm_build_695 int16 = Dm_build_690 + 25

	Dm_build_696 int16 = Dm_build_690 + 26

	Dm_build_697 int16 = Dm_build_690 + 30

	Dm_build_698 int16 = Dm_build_690 + 31

	Dm_build_699 int16 = Dm_build_690 + 32

	Dm_build_700 int16 = Dm_build_690 + 33

	Dm_build_701 int16 = Dm_build_690 + 35

	Dm_build_702 int16 = Dm_build_690 + 38

	Dm_build_703 int16 = Dm_build_690 + 39

	Dm_build_704 int16 = Dm_build_690 + 51

	Dm_build_705 int16 = Dm_build_690 + 71

	Dm_build_706 int16 = Dm_build_690 + 124

	Dm_build_707 int16 = Dm_build_690 + 125

	Dm_build_708 int16 = Dm_build_690 + 126

	Dm_build_709 int16 = Dm_build_690 + 127

	Dm_build_710 int16 = Dm_build_690 + 128

	Dm_build_711 int16 = Dm_build_690 + 129

	Dm_build_712 byte = 0

	Dm_build_713 byte = 2

	Dm_build_714 = 2048

	Dm_build_715 = -1

	Dm_build_716 = 0

	Dm_build_717 = 16000

	Dm_build_718 = 32000

	Dm_build_719 = 0x00000000

	Dm_build_720 = 0x00000020

	Dm_build_721 = 0x00000040

	Dm_build_722 = 0x00000FFF

	Dm_build_723 = 4
)
View Source
const (
	Dm_build_837 int = 0x01

	Dm_build_838 int = 0x02

	Dm_build_839 int = 0x04

	Dm_build_840 int = 0x08
)
View Source
const (
	Dm_build_912 = 0

	Dm_build_913 = Dm_build_912 + ULINT_SIZE

	Dm_build_914 = Dm_build_913 + USINT_SIZE

	Dm_build_915 = Dm_build_914 + ULINT_SIZE

	Dm_build_916 = Dm_build_915 + ULINT_SIZE

	Dm_build_917 = Dm_build_916 + BYTE_SIZE

	Dm_build_918 = -2

	Dm_build_919 = -3
)
View Source
const (
	Dm_build_940 = Dm_build_634

	Dm_build_941 = Dm_build_940 + DDWORD_SIZE

	Dm_build_942 = Dm_build_941 + LINT64_SIZE

	Dm_build_943 = Dm_build_942 + USINT_SIZE

	Dm_build_944 = Dm_build_634

	Dm_build_945 = Dm_build_944 + DDWORD_SIZE
)
View Source
const (
	Dm_build_1002 = Dm_build_634

	Dm_build_1003 = Dm_build_1002 + ULINT_SIZE

	Dm_build_1004 = Dm_build_1003 + ULINT_SIZE

	Dm_build_1005 = Dm_build_1004 + ULINT_SIZE

	Dm_build_1006 = Dm_build_1005 + BYTE_SIZE

	Dm_build_1007 = Dm_build_1006 + USINT_SIZE

	Dm_build_1008 = Dm_build_1007 + ULINT_SIZE

	Dm_build_1009 = Dm_build_1008 + BYTE_SIZE

	Dm_build_1010 = Dm_build_1009 + BYTE_SIZE

	Dm_build_1011 = Dm_build_1010 + BYTE_SIZE

	Dm_build_1012 = Dm_build_634

	Dm_build_1013 = Dm_build_1012 + ULINT_SIZE

	Dm_build_1014 = Dm_build_1013 + ULINT_SIZE

	Dm_build_1015 = Dm_build_1014 + BYTE_SIZE

	Dm_build_1016 = Dm_build_1015 + ULINT_SIZE

	Dm_build_1017 = Dm_build_1016 + BYTE_SIZE

	Dm_build_1018 = Dm_build_1017 + BYTE_SIZE

	Dm_build_1019 = Dm_build_1018 + USINT_SIZE

	Dm_build_1020 = Dm_build_1019 + USINT_SIZE

	Dm_build_1021 = Dm_build_1020 + BYTE_SIZE

	Dm_build_1022 = Dm_build_1021 + USINT_SIZE

	Dm_build_1023 = Dm_build_1022 + BYTE_SIZE

	Dm_build_1024 = Dm_build_1023 + BYTE_SIZE

	Dm_build_1025 = Dm_build_1024 + ULINT_SIZE

	Dm_build_1026 = Dm_build_1025 + USINT_SIZE
)
View Source
const (
	Dm_build_1054 = Dm_build_634
	Dm_build_1055 = Dm_build_1054 + USINT_SIZE
)
View Source
const (
	Dm_build_1139 = Dm_build_634

	Dm_build_1140 = Dm_build_1139 + ULINT_SIZE

	Dm_build_1141 = Dm_build_1140 + ULINT_SIZE

	Dm_build_1142 = Dm_build_1141 + BYTE_SIZE

	Dm_build_1143 = Dm_build_1142 + BYTE_SIZE

	Dm_build_1144 = Dm_build_1143 + BYTE_SIZE

	Dm_build_1145 = Dm_build_1144 + BYTE_SIZE

	Dm_build_1146 = Dm_build_1145 + BYTE_SIZE

	Dm_build_1147 = Dm_build_1146 + BYTE_SIZE

	Dm_build_1148 = Dm_build_1147 + BYTE_SIZE

	Dm_build_1149 = Dm_build_634

	Dm_build_1150 = Dm_build_1149 + ULINT_SIZE

	Dm_build_1151 = Dm_build_1150 + ULINT_SIZE

	Dm_build_1152 = Dm_build_1151 + ULINT_SIZE

	Dm_build_1153 = Dm_build_1152 + ULINT_SIZE

	Dm_build_1154 = Dm_build_1153 + ULINT_SIZE

	Dm_build_1155 = Dm_build_1154 + BYTE_SIZE

	Dm_build_1156 = Dm_build_1155 + BYTE_SIZE

	Dm_build_1157 = Dm_build_1156 + BYTE_SIZE

	Dm_build_1158 = Dm_build_1157 + BYTE_SIZE

	Dm_build_1159 = Dm_build_1158 + BYTE_SIZE

	Dm_build_1160 = Dm_build_1159 + USINT_SIZE

	Dm_build_1161 = Dm_build_1160 + BYTE_SIZE
)
View Source
const (
	SQL_SELECT_STANDBY = "select distinct mailIni.inst_name, mailIni.INST_IP, mailIni.INST_PORT, archIni.arch_status " +
		"from  v$arch_status archIni " +
		"left join (select * from V$DM_MAL_INI) mailIni on archIni.arch_dest = mailIni.inst_name " +
		"left join V$MAL_LINK_STATUS on CTL_LINK_STATUS  = 'CONNECTED' AND DATA_LINK_STATUS = 'CONNECTED' " +
		"where archIni.arch_type in ('TIMELY', 'REALTIME') AND  archIni.arch_status = 'VALID'"

	SQL_SELECT_STANDBY2 = "select distinct " +
		"mailIni.mal_inst_name, mailIni.mal_INST_HOST, mailIni.mal_INST_PORT, archIni.arch_status " +
		"from v$arch_status archIni " + "left join (select * from V$DM_MAL_INI) mailIni " +
		"on archIni.arch_dest = mailIni.mal_inst_name " + "left join V$MAL_LINK_STATUS " +
		"on CTL_LINK_STATUS  = 'CONNECTED' AND DATA_LINK_STATUS = 'CONNECTED' " +
		"where archIni.arch_type in ('TIMELY', 'REALTIME') AND  archIni.arch_status = 'VALID'"
)
View Source
const (
	DEFAULT_PORT int32 = 5236

	//log level
	LOG_OFF int = 0

	LOG_ERROR int = 1

	LOG_WARN int = 2

	LOG_SQL int = 3

	LOG_INFO int = 4

	LOG_DEBUG int = 5

	LOG_ALL int = 9

	//stat
	STAT_SQL_REMOVE_LATEST int = 0

	STAT_SQL_REMOVE_OLDEST int = 1

	// 编码字符集
	ENCODING_UTF8 string = "UTF-8"

	ENCODING_EUCKR string = "EUC-KR"

	ENCODING_GB18030 string = "GB18030"

	DbAliveCheckFreqDef = 0

	LocaleDef = 0

	// log
	LogLevelDef = LOG_OFF // 日志级别:off, error, warn, sql, info, all

	LogFlushFreqDef = 10 // 日志刷盘时间s (>=0)

	LogFlushQueueSizeDef = 100 //日志队列大小

	LogBufferSizeDef = 32 * 1024 // 日志缓冲区大小 (>0)

	// stat
	StatEnableDef = false //

	StatFlushFreqDef = 3 // 日志刷盘时间s (>=0)

	StatSlowSqlCountDef = 100 // 慢sql top行数,(0-1000)

	StatHighFreqSqlCountDef = 100 // 高频sql top行数, (0-1000)

	StatSqlMaxCountDef = 100000 // sql 统计最大值(0-100000)

	StatSqlRemoveModeDef = STAT_SQL_REMOVE_LATEST // 记录sql数超过最大值时,sql淘汰方式
)
View Source
const (
	INT8_MAX int8 = math.MaxInt8

	INT8_MIN int8 = math.MinInt8

	BYTE_MAX byte = math.MaxUint8

	BYTE_MIN byte = 0

	INT16_MAX int16 = math.MaxInt16

	INT16_MIN int16 = math.MinInt16

	UINT16_MAX uint16 = math.MaxUint16

	UINT16_MIN uint16 = 0

	INT32_MAX int32 = math.MaxInt32

	INT32_MIN int32 = math.MinInt32

	UINT32_MAX uint32 = math.MaxUint32

	UINT32_MIN uint32 = 0

	INT64_MAX int64 = math.MaxInt64

	INT64_MIN int64 = math.MinInt64

	UINT64_MAX uint64 = math.MaxUint64

	UINT64_MIN uint64 = 0

	FLOAT32_MAX float32 = 3.4e+38

	FLOAT32_MIN float32 = -3.4e+38

	BYTE_SIZE = 1

	USINT_SIZE = 2

	ULINT_SIZE = 4

	DDWORD_SIZE = 8

	LINT64_SIZE = 8

	CHAR = 0

	VARCHAR2 = 1

	VARCHAR = 2

	BIT = 3

	TINYINT = 5

	SMALLINT = 6

	INT = 7

	BIGINT = 8

	DECIMAL = 9

	REAL = 10

	DOUBLE = 11

	BLOB = 12

	BOOLEAN = 13

	DATE = 14

	TIME = 15

	DATETIME = 16

	BINARY = 17

	VARBINARY = 18

	CLOB = 19

	INTERVAL_YM = 20

	INTERVAL_DT = 21

	TIME_TZ = 22

	DATETIME_TZ = 23

	NULL = 25

	ANY = 31

	STAR_ALL = 32

	STAR = 33

	RECORD = 40

	TYPE = 41

	TYPE_REF = 42

	UNKNOWN = 54

	ARRAY = 117

	CLASS = 119

	CURSOR = 120

	PLTYPE_RECORD = 121

	SARRAY = 122

	CURSOR_ORACLE = -10

	BIT_PREC = BYTE_SIZE

	TINYINT_PREC = BYTE_SIZE

	SMALLINT_PREC = USINT_SIZE

	INT_PREC = ULINT_SIZE

	BIGINT_PREC = LINT64_SIZE

	REAL_PREC = 4

	DOUBLE_PREC = 8

	DATE_PREC = 3

	TIME_PREC = 5

	DATETIME_PREC = 8

	INTERVAL_YM_PREC = 3 * ULINT_SIZE

	INTERVAL_DT_PREC = 6 * ULINT_SIZE

	TIME_TZ_PREC = 12

	DATETIME_TZ_PREC = 12

	VARCHAR_PREC = 8188

	VARBINARY_PREC = 8188

	BLOB_PREC int32 = INT32_MAX

	CLOB_PREC int32 = INT32_MAX

	NULL_PREC = 0

	LOCAL_TIME_ZONE_SCALE_MASK = 0x00001000

	BFILE_PREC = 512

	BFILE_SCALE = 6

	COMPLEX_SCALE = 5

	CURRENCY_PREC = 19

	CURRENCY_SCALE = 4

	FLOAT_SCALE_MASK = 0X81
)
View Source
const (
	ARRAY_TYPE_SHORT = 1

	ARRAY_TYPE_INTEGER = 2

	ARRAY_TYPE_LONG = 3

	ARRAY_TYPE_FLOAT = 4

	ARRAY_TYPE_DOUBLE = 5
)
View Source
const (
	OBJ_BLOB_MAGIC = 78111999

	CLTN_TYPE_IND_TABLE = 3

	CLTN_TYPE_NST_TABLE = 2

	CLTN_TYPE_VARRAY = 1
)
View Source
const COL_MAX_LEN = 32
View Source
const (
	Dm_build_1042 = Dm_build_634
)
View Source
const (
	Dm_build_1091 = Dm_build_634
)
View Source
const (
	READ_LEN = Dm_build_717
)
View Source
const (
	READ_MAX_SIZE = 100
)
View Source
const SQL_GET_DSC_EP_SITE = "SELECT " +
	"dsc.ep_seqno, " +
	"(CASE mal.MAL_INST_HOST WHEN '' THEN mal.MAL_HOST ELSE mal.MAL_INST_HOST END) as ep_host, " +
	"dcr.EP_PORT, " +
	"dsc.EP_STATUS " +
	"FROM V$DSC_EP_INFO dsc " +
	"LEFT join V$DM_MAL_INI mal " +
	"on dsc.EP_NAME = mal.MAL_INST_NAME " +
	"LEFT join (SELECT grp.GROUP_TYPE GROUP_TYPE, ep.* FROM SYS.\"V$DCR_GROUP\" grp, SYS.\"V$DCR_EP\" ep where grp.GROUP_NAME = ep.GROUP_NAME) dcr " +
	"on dsc.EP_NAME = dcr.EP_NAME and GROUP_TYPE = 'DB' order by  dsc.ep_seqno asc;"

Variables

View Source
var (
	DSN_INVALID_SCHEMA             = newDmError(9001, "error.dsn.invalidSchema")
	UNSUPPORTED_SCAN               = newDmError(9002, "error.unsupported.scan")
	INVALID_PARAMETER_NUMBER       = newDmError(9003, "error.invalidParameterNumber")
	THIRD_PART_CIPHER_INIT_FAILED  = newDmError(9004, "error.initThirdPartCipherFailed")
	ECGO_NOT_QUERY_SQL             = newDmError(9005, "error.notQuerySQL")
	ECGO_NOT_EXEC_SQL              = newDmError(9006, "error.notExecSQL")
	ECGO_UNKOWN_NETWORK            = newDmError(9007, "error.unkownNetWork")
	ECGO_INVALID_CONN              = newDmError(9008, "error.invalidConn")
	ECGO_UNSUPPORTED_INPARAM_TYPE  = newDmError(9009, "error.unsupportedInparamType")
	ECGO_UNSUPPORTED_OUTPARAM_TYPE = newDmError(9010, "error.unsupportedOutparamType")
	ECGO_STORE_IN_NIL_POINTER      = newDmError(9011, "error.storeInNilPointer")
	ECGO_IS_NULL                   = newDmError(9012, "error.isNull")
)

驱动级错误

View Source
var (
	ECGO_CONNECTION_SWITCH_FAILED    = newDmError(20001, "error.connectionSwitchFailed")
	ECGO_CONNECTION_SWITCHED         = newDmError(20000, "error.connectionSwitched")
	ECGO_COMMUNITION_ERROR           = newDmError(6001, "error.communicationError")
	ECGO_MSG_CHECK_ERROR             = newDmError(6002, "error.msgCheckError")
	ECGO_INVALID_TIME_INTERVAL       = newDmError(6005, "error.invalidTimeInterval")
	ECGO_UNSUPPORTED_TYPE            = newDmError(6006, "error.unsupportedType")
	ECGO_DATA_CONVERTION_ERROR       = newDmError(6007, "error.dataConvertionError")
	ECGO_INVALID_SQL_TYPE            = newDmError(6009, "error.invalidSqlType")
	ECGO_INVALID_DATETIME_FORMAT     = newDmError(6015, "error.invalidDateTimeFormat")
	ECGO_INVALID_COLUMN_TYPE         = newDmError(6016, "error.invalidColumnType")
	ECGO_RESULTSET_IS_READ_ONLY      = newDmError(6029, "error.resultsetInReadOnlyStatus")
	ECGO_INVALID_SEQUENCE_NUMBER     = newDmError(6032, "error.invalidSequenceNumber")
	ECGO_RESULTSET_CLOSED            = newDmError(6034, "errorResultSetColsed")
	ECGO_STATEMENT_HANDLE_CLOSED     = newDmError(6035, "errorStatementHandleClosed")
	ECGO_INVALID_PARAMETER_VALUE     = newDmError(6036, "error.invalidParamterValue")
	ECGO_INVALID_TRAN_ISOLATION      = newDmError(6038, "error.invalidTranIsolation")
	ECGO_COMMIT_IN_AUTOCOMMIT_MODE   = newDmError(6039, "errorCommitInAutoCommitMode")
	ECGO_ROLLBACK_IN_AUTOCOMMIT_MODE = newDmError(6040, "errorRollbackInAutoCommitMode")
	ECGO_INVALID_LENGTH_OR_OFFSET    = newDmError(6057, "error.invalidLenOrOffset")
	ECGO_INTERVAL_OVERFLOW           = newDmError(6066, "error.intervalValueOverflow")
	ECGO_INVALID_BFILE_STR           = newDmError(6067, "error.invalidBFile")
	ECGO_INVALID_HEX                 = newDmError(6068, "error.invalidHex")
	ECGO_INVALID_CIPHER              = newDmError(6069, "error.invalidCipher")
	ECGO_OSAUTH_ERROR                = newDmError(6073, "error.osauthError")
	ECGO_ERROR_SERVER_VERSION        = newDmError(6074, "error.serverVersion")
	ECGO_USERNAME_TOO_LONG           = newDmError(6075, "error.usernameTooLong")
	ECGO_PASSWORD_TOO_LONG           = newDmError(6076, "error.passwordTooLong")
	ECGO_INVALID_COMPLEX_TYPE_NAME   = newDmError(6079, "error.invalidComplexTypeName")
	ECGO_STRUCT_MEM_NOT_MATCH        = newDmError(6080, "error.structMemNotMatch")
	ECGO_INVALID_OBJ_BLOB            = newDmError(6081, "error.invalidObjBlob")
	ECGO_INVALID_ARRAY_LEN           = newDmError(6082, "error.invalidArrayLen")
	ECGO_INVALID_SERVER_MODE         = newDmError(6091, "error.invalidServerMode")
	ECGO_DATA_TOO_LONG               = newDmError(6092, "error.dataTooLong")
	ECGO_BATCH_ERROR                 = newDmError(6093, "error.batchError")
	ECGO_MSG_TOO_LONG                = newDmError(6101, "error.msgTooLong")
	ECGO_INVALID_DATETIME_VALUE      = newDmError(6103, "error.invalidDateTimeValue")

	ECGO_INIT_SSL_FAILED = newDmError(20002, "error.SSLInitFailed")
	ECGO_LOB_FREED       = newDmError(20003, "error.LobDataHasFreed")
	ECGO_FATAL_ERROR     = newDmError(20004, "error.fatalError")
)
View Source
var (
	ECGO_DATA_OVERFLOW       = newDmError(-6102, "error.dataOverflow")
	ECGO_DATETIME_OVERFLOW   = newDmError(-6112, "error.datetimeOverflow")
	EC_RN_EXCEED_ROWSET_SIZE = newDmError(-7036, "")
	EC_BP_WITH_ERROR         = newDmError(121, "warning.bpWithErr")
)

Svr Msg Err

View Source
var (
	DbAliveCheckFreq = DbAliveCheckFreqDef

	Locale = LocaleDef // 0:简体中文 1:英文 2:繁体中文

	// log
	LogLevel = LogLevelDef // 日志级别:off, error, warn, sql, info, all

	LogDir = LogDirDef

	LogFlushFreq = LogFlushFreqDef // 日志刷盘时间s (>=0)

	LogFlushQueueSize = LogFlushQueueSizeDef

	LogBufferSize = LogBufferSizeDef // 日志缓冲区大小 (>0)

	// stat
	StatEnable = StatEnableDef //

	StatDir = StatDirDef // jdbc工作目录,所有生成的文件都在该目录下

	StatFlushFreq = StatFlushFreqDef // 日志刷盘时间s (>=0)

	StatSlowSqlCount = StatSlowSqlCountDef // 慢sql top行数,(0-1000)

	StatHighFreqSqlCount = StatHighFreqSqlCountDef // 高频sql top行数, (0-1000)

	StatSqlMaxCount = StatSqlMaxCountDef // sql 统计最大值(0-100000)

	StatSqlRemoveMode = StatSqlRemoveModeDef // 记录sql数超过最大值时,sql淘汰方式

	/*---------------------------------------------------------------*/
	ServerGroupMap = make(map[string]*epGroup)

	GlobalProperties = NewProperties()
)
View Source
var AccessLogger = &Logger{}
View Source
var ConnLogger = &Logger{}
View Source
var DB2G db2g
View Source
var Dm_build_1220 = &dm_build_1219{}
View Source
var Dm_build_724 = [8][256]uint32{

	{0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535,
		0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b,
		0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148,
		0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856,
		0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63,
		0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, 0x3c03e4d1,
		0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6,
		0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac,
		0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599,
		0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87,
		0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, 0x01db7106, 0x98d220bc,
		0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2,
		0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97,
		0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed,
		0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea,
		0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, 0x4db26158,
		0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d,
		0xd3d6f4fb, 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73,
		0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010,
		0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, 0x5edef90e,
		0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b,
		0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, 0xead54739,
		0x9dd277af, 0x04db2615, 0x73dc1683, 0xe3630b12, 0x94643b84, 0x0d6d6a3e,
		0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344,
		0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671,
		0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f,
		0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4,
		0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda,
		0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef,
		0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795,
		0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92,
		0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0,
		0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785,
		0x05005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b,
		0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8,
		0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, 0x88085ae6,
		0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3,
		0x166ccf45, 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661,
		0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66,
		0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, 0xbdbdf21c,
		0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729,
		0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37,
		0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d},

	{0x00000000, 0x191b3141, 0x32366282, 0x2b2d53c3, 0x646cc504, 0x7d77f445, 0x565aa786,
		0x4f4196c7, 0xc8d98a08, 0xd1c2bb49, 0xfaefe88a, 0xe3f4d9cb, 0xacb54f0c,
		0xb5ae7e4d, 0x9e832d8e, 0x87981ccf, 0x4ac21251, 0x53d92310, 0x78f470d3,
		0x61ef4192, 0x2eaed755, 0x37b5e614, 0x1c98b5d7, 0x05838496, 0x821b9859,
		0x9b00a918, 0xb02dfadb, 0xa936cb9a, 0xe6775d5d, 0xff6c6c1c, 0xd4413fdf,
		0xcd5a0e9e, 0x958424a2, 0x8c9f15e3, 0xa7b24620, 0xbea97761, 0xf1e8e1a6,
		0xe8f3d0e7, 0xc3de8324, 0xdac5b265, 0x5d5daeaa, 0x44469feb, 0x6f6bcc28,
		0x7670fd69, 0x39316bae, 0x202a5aef, 0x0b07092c, 0x121c386d, 0xdf4636f3,
		0xc65d07b2, 0xed705471, 0xf46b6530, 0xbb2af3f7, 0xa231c2b6, 0x891c9175,
		0x9007a034, 0x179fbcfb, 0x0e848dba, 0x25a9de79, 0x3cb2ef38, 0x73f379ff,
		0x6ae848be, 0x41c51b7d, 0x58de2a3c, 0xf0794f05, 0xe9627e44, 0xc24f2d87,
		0xdb541cc6, 0x94158a01, 0x8d0ebb40, 0xa623e883, 0xbf38d9c2, 0x38a0c50d,
		0x21bbf44c, 0x0a96a78f, 0x138d96ce, 0x5ccc0009, 0x45d73148, 0x6efa628b,
		0x77e153ca, 0xbabb5d54, 0xa3a06c15, 0x888d3fd6, 0x91960e97, 0xded79850,
		0xc7cca911, 0xece1fad2, 0xf5facb93, 0x7262d75c, 0x6b79e61d, 0x4054b5de,
		0x594f849f, 0x160e1258, 0x0f152319, 0x243870da, 0x3d23419b, 0x65fd6ba7,
		0x7ce65ae6, 0x57cb0925, 0x4ed03864, 0x0191aea3, 0x188a9fe2, 0x33a7cc21,
		0x2abcfd60, 0xad24e1af, 0xb43fd0ee, 0x9f12832d, 0x8609b26c, 0xc94824ab,
		0xd05315ea, 0xfb7e4629, 0xe2657768, 0x2f3f79f6, 0x362448b7, 0x1d091b74,
		0x04122a35, 0x4b53bcf2, 0x52488db3, 0x7965de70, 0x607eef31, 0xe7e6f3fe,
		0xfefdc2bf, 0xd5d0917c, 0xcccba03d, 0x838a36fa, 0x9a9107bb, 0xb1bc5478,
		0xa8a76539, 0x3b83984b, 0x2298a90a, 0x09b5fac9, 0x10aecb88, 0x5fef5d4f,
		0x46f46c0e, 0x6dd93fcd, 0x74c20e8c, 0xf35a1243, 0xea412302, 0xc16c70c1,
		0xd8774180, 0x9736d747, 0x8e2de606, 0xa500b5c5, 0xbc1b8484, 0x71418a1a,
		0x685abb5b, 0x4377e898, 0x5a6cd9d9, 0x152d4f1e, 0x0c367e5f, 0x271b2d9c,
		0x3e001cdd, 0xb9980012, 0xa0833153, 0x8bae6290, 0x92b553d1, 0xddf4c516,
		0xc4eff457, 0xefc2a794, 0xf6d996d5, 0xae07bce9, 0xb71c8da8, 0x9c31de6b,
		0x852aef2a, 0xca6b79ed, 0xd37048ac, 0xf85d1b6f, 0xe1462a2e, 0x66de36e1,
		0x7fc507a0, 0x54e85463, 0x4df36522, 0x02b2f3e5, 0x1ba9c2a4, 0x30849167,
		0x299fa026, 0xe4c5aeb8, 0xfdde9ff9, 0xd6f3cc3a, 0xcfe8fd7b, 0x80a96bbc,
		0x99b25afd, 0xb29f093e, 0xab84387f, 0x2c1c24b0, 0x350715f1, 0x1e2a4632,
		0x07317773, 0x4870e1b4, 0x516bd0f5, 0x7a468336, 0x635db277, 0xcbfad74e,
		0xd2e1e60f, 0xf9ccb5cc, 0xe0d7848d, 0xaf96124a, 0xb68d230b, 0x9da070c8,
		0x84bb4189, 0x03235d46, 0x1a386c07, 0x31153fc4, 0x280e0e85, 0x674f9842,
		0x7e54a903, 0x5579fac0, 0x4c62cb81, 0x8138c51f, 0x9823f45e, 0xb30ea79d,
		0xaa1596dc, 0xe554001b, 0xfc4f315a, 0xd7626299, 0xce7953d8, 0x49e14f17,
		0x50fa7e56, 0x7bd72d95, 0x62cc1cd4, 0x2d8d8a13, 0x3496bb52, 0x1fbbe891,
		0x06a0d9d0, 0x5e7ef3ec, 0x4765c2ad, 0x6c48916e, 0x7553a02f, 0x3a1236e8,
		0x230907a9, 0x0824546a, 0x113f652b, 0x96a779e4, 0x8fbc48a5, 0xa4911b66,
		0xbd8a2a27, 0xf2cbbce0, 0xebd08da1, 0xc0fdde62, 0xd9e6ef23, 0x14bce1bd,
		0x0da7d0fc, 0x268a833f, 0x3f91b27e, 0x70d024b9, 0x69cb15f8, 0x42e6463b,
		0x5bfd777a, 0xdc656bb5, 0xc57e5af4, 0xee530937, 0xf7483876, 0xb809aeb1,
		0xa1129ff0, 0x8a3fcc33, 0x9324fd72},

	{0x00000000, 0x01c26a37, 0x0384d46e, 0x0246be59, 0x0709a8dc, 0x06cbc2eb, 0x048d7cb2,
		0x054f1685, 0x0e1351b8, 0x0fd13b8f, 0x0d9785d6, 0x0c55efe1, 0x091af964,
		0x08d89353, 0x0a9e2d0a, 0x0b5c473d, 0x1c26a370, 0x1de4c947, 0x1fa2771e,
		0x1e601d29, 0x1b2f0bac, 0x1aed619b, 0x18abdfc2, 0x1969b5f5, 0x1235f2c8,
		0x13f798ff, 0x11b126a6, 0x10734c91, 0x153c5a14, 0x14fe3023, 0x16b88e7a,
		0x177ae44d, 0x384d46e0, 0x398f2cd7, 0x3bc9928e, 0x3a0bf8b9, 0x3f44ee3c,
		0x3e86840b, 0x3cc03a52, 0x3d025065, 0x365e1758, 0x379c7d6f, 0x35dac336,
		0x3418a901, 0x3157bf84, 0x3095d5b3, 0x32d36bea, 0x331101dd, 0x246be590,
		0x25a98fa7, 0x27ef31fe, 0x262d5bc9, 0x23624d4c, 0x22a0277b, 0x20e69922,
		0x2124f315, 0x2a78b428, 0x2bbade1f, 0x29fc6046, 0x283e0a71, 0x2d711cf4,
		0x2cb376c3, 0x2ef5c89a, 0x2f37a2ad, 0x709a8dc0, 0x7158e7f7, 0x731e59ae,
		0x72dc3399, 0x7793251c, 0x76514f2b, 0x7417f172, 0x75d59b45, 0x7e89dc78,
		0x7f4bb64f, 0x7d0d0816, 0x7ccf6221, 0x798074a4, 0x78421e93, 0x7a04a0ca,
		0x7bc6cafd, 0x6cbc2eb0, 0x6d7e4487, 0x6f38fade, 0x6efa90e9, 0x6bb5866c,
		0x6a77ec5b, 0x68315202, 0x69f33835, 0x62af7f08, 0x636d153f, 0x612bab66,
		0x60e9c151, 0x65a6d7d4, 0x6464bde3, 0x662203ba, 0x67e0698d, 0x48d7cb20,
		0x4915a117, 0x4b531f4e, 0x4a917579, 0x4fde63fc, 0x4e1c09cb, 0x4c5ab792,
		0x4d98dda5, 0x46c49a98, 0x4706f0af, 0x45404ef6, 0x448224c1, 0x41cd3244,
		0x400f5873, 0x4249e62a, 0x438b8c1d, 0x54f16850, 0x55330267, 0x5775bc3e,
		0x56b7d609, 0x53f8c08c, 0x523aaabb, 0x507c14e2, 0x51be7ed5, 0x5ae239e8,
		0x5b2053df, 0x5966ed86, 0x58a487b1, 0x5deb9134, 0x5c29fb03, 0x5e6f455a,
		0x5fad2f6d, 0xe1351b80, 0xe0f771b7, 0xe2b1cfee, 0xe373a5d9, 0xe63cb35c,
		0xe7fed96b, 0xe5b86732, 0xe47a0d05, 0xef264a38, 0xeee4200f, 0xeca29e56,
		0xed60f461, 0xe82fe2e4, 0xe9ed88d3, 0xebab368a, 0xea695cbd, 0xfd13b8f0,
		0xfcd1d2c7, 0xfe976c9e, 0xff5506a9, 0xfa1a102c, 0xfbd87a1b, 0xf99ec442,
		0xf85cae75, 0xf300e948, 0xf2c2837f, 0xf0843d26, 0xf1465711, 0xf4094194,
		0xf5cb2ba3, 0xf78d95fa, 0xf64fffcd, 0xd9785d60, 0xd8ba3757, 0xdafc890e,
		0xdb3ee339, 0xde71f5bc, 0xdfb39f8b, 0xddf521d2, 0xdc374be5, 0xd76b0cd8,
		0xd6a966ef, 0xd4efd8b6, 0xd52db281, 0xd062a404, 0xd1a0ce33, 0xd3e6706a,
		0xd2241a5d, 0xc55efe10, 0xc49c9427, 0xc6da2a7e, 0xc7184049, 0xc25756cc,
		0xc3953cfb, 0xc1d382a2, 0xc011e895, 0xcb4dafa8, 0xca8fc59f, 0xc8c97bc6,
		0xc90b11f1, 0xcc440774, 0xcd866d43, 0xcfc0d31a, 0xce02b92d, 0x91af9640,
		0x906dfc77, 0x922b422e, 0x93e92819, 0x96a63e9c, 0x976454ab, 0x9522eaf2,
		0x94e080c5, 0x9fbcc7f8, 0x9e7eadcf, 0x9c381396, 0x9dfa79a1, 0x98b56f24,
		0x99770513, 0x9b31bb4a, 0x9af3d17d, 0x8d893530, 0x8c4b5f07, 0x8e0de15e,
		0x8fcf8b69, 0x8a809dec, 0x8b42f7db, 0x89044982, 0x88c623b5, 0x839a6488,
		0x82580ebf, 0x801eb0e6, 0x81dcdad1, 0x8493cc54, 0x8551a663, 0x8717183a,
		0x86d5720d, 0xa9e2d0a0, 0xa820ba97, 0xaa6604ce, 0xaba46ef9, 0xaeeb787c,
		0xaf29124b, 0xad6fac12, 0xacadc625, 0xa7f18118, 0xa633eb2f, 0xa4755576,
		0xa5b73f41, 0xa0f829c4, 0xa13a43f3, 0xa37cfdaa, 0xa2be979d, 0xb5c473d0,
		0xb40619e7, 0xb640a7be, 0xb782cd89, 0xb2cddb0c, 0xb30fb13b, 0xb1490f62,
		0xb08b6555, 0xbbd72268, 0xba15485f, 0xb853f606, 0xb9919c31, 0xbcde8ab4,
		0xbd1ce083, 0xbf5a5eda, 0xbe9834ed},

	{0x00000000, 0xb8bc6765, 0xaa09c88b, 0x12b5afee, 0x8f629757, 0x37def032, 0x256b5fdc,
		0x9dd738b9, 0xc5b428ef, 0x7d084f8a, 0x6fbde064, 0xd7018701, 0x4ad6bfb8,
		0xf26ad8dd, 0xe0df7733, 0x58631056, 0x5019579f, 0xe8a530fa, 0xfa109f14,
		0x42acf871, 0xdf7bc0c8, 0x67c7a7ad, 0x75720843, 0xcdce6f26, 0x95ad7f70,
		0x2d111815, 0x3fa4b7fb, 0x8718d09e, 0x1acfe827, 0xa2738f42, 0xb0c620ac,
		0x087a47c9, 0xa032af3e, 0x188ec85b, 0x0a3b67b5, 0xb28700d0, 0x2f503869,
		0x97ec5f0c, 0x8559f0e2, 0x3de59787, 0x658687d1, 0xdd3ae0b4, 0xcf8f4f5a,
		0x7733283f, 0xeae41086, 0x525877e3, 0x40edd80d, 0xf851bf68, 0xf02bf8a1,
		0x48979fc4, 0x5a22302a, 0xe29e574f, 0x7f496ff6, 0xc7f50893, 0xd540a77d,
		0x6dfcc018, 0x359fd04e, 0x8d23b72b, 0x9f9618c5, 0x272a7fa0, 0xbafd4719,
		0x0241207c, 0x10f48f92, 0xa848e8f7, 0x9b14583d, 0x23a83f58, 0x311d90b6,
		0x89a1f7d3, 0x1476cf6a, 0xaccaa80f, 0xbe7f07e1, 0x06c36084, 0x5ea070d2,
		0xe61c17b7, 0xf4a9b859, 0x4c15df3c, 0xd1c2e785, 0x697e80e0, 0x7bcb2f0e,
		0xc377486b, 0xcb0d0fa2, 0x73b168c7, 0x6104c729, 0xd9b8a04c, 0x446f98f5,
		0xfcd3ff90, 0xee66507e, 0x56da371b, 0x0eb9274d, 0xb6054028, 0xa4b0efc6,
		0x1c0c88a3, 0x81dbb01a, 0x3967d77f, 0x2bd27891, 0x936e1ff4, 0x3b26f703,
		0x839a9066, 0x912f3f88, 0x299358ed, 0xb4446054, 0x0cf80731, 0x1e4da8df,
		0xa6f1cfba, 0xfe92dfec, 0x462eb889, 0x549b1767, 0xec277002, 0x71f048bb,
		0xc94c2fde, 0xdbf98030, 0x6345e755, 0x6b3fa09c, 0xd383c7f9, 0xc1366817,
		0x798a0f72, 0xe45d37cb, 0x5ce150ae, 0x4e54ff40, 0xf6e89825, 0xae8b8873,
		0x1637ef16, 0x048240f8, 0xbc3e279d, 0x21e91f24, 0x99557841, 0x8be0d7af,
		0x335cb0ca, 0xed59b63b, 0x55e5d15e, 0x47507eb0, 0xffec19d5, 0x623b216c,
		0xda874609, 0xc832e9e7, 0x708e8e82, 0x28ed9ed4, 0x9051f9b1, 0x82e4565f,
		0x3a58313a, 0xa78f0983, 0x1f336ee6, 0x0d86c108, 0xb53aa66d, 0xbd40e1a4,
		0x05fc86c1, 0x1749292f, 0xaff54e4a, 0x322276f3, 0x8a9e1196, 0x982bbe78,
		0x2097d91d, 0x78f4c94b, 0xc048ae2e, 0xd2fd01c0, 0x6a4166a5, 0xf7965e1c,
		0x4f2a3979, 0x5d9f9697, 0xe523f1f2, 0x4d6b1905, 0xf5d77e60, 0xe762d18e,
		0x5fdeb6eb, 0xc2098e52, 0x7ab5e937, 0x680046d9, 0xd0bc21bc, 0x88df31ea,
		0x3063568f, 0x22d6f961, 0x9a6a9e04, 0x07bda6bd, 0xbf01c1d8, 0xadb46e36,
		0x15080953, 0x1d724e9a, 0xa5ce29ff, 0xb77b8611, 0x0fc7e174, 0x9210d9cd,
		0x2aacbea8, 0x38191146, 0x80a57623, 0xd8c66675, 0x607a0110, 0x72cfaefe,
		0xca73c99b, 0x57a4f122, 0xef189647, 0xfdad39a9, 0x45115ecc, 0x764dee06,
		0xcef18963, 0xdc44268d, 0x64f841e8, 0xf92f7951, 0x41931e34, 0x5326b1da,
		0xeb9ad6bf, 0xb3f9c6e9, 0x0b45a18c, 0x19f00e62, 0xa14c6907, 0x3c9b51be,
		0x842736db, 0x96929935, 0x2e2efe50, 0x2654b999, 0x9ee8defc, 0x8c5d7112,
		0x34e11677, 0xa9362ece, 0x118a49ab, 0x033fe645, 0xbb838120, 0xe3e09176,
		0x5b5cf613, 0x49e959fd, 0xf1553e98, 0x6c820621, 0xd43e6144, 0xc68bceaa,
		0x7e37a9cf, 0xd67f4138, 0x6ec3265d, 0x7c7689b3, 0xc4caeed6, 0x591dd66f,
		0xe1a1b10a, 0xf3141ee4, 0x4ba87981, 0x13cb69d7, 0xab770eb2, 0xb9c2a15c,
		0x017ec639, 0x9ca9fe80, 0x241599e5, 0x36a0360b, 0x8e1c516e, 0x866616a7,
		0x3eda71c2, 0x2c6fde2c, 0x94d3b949, 0x090481f0, 0xb1b8e695, 0xa30d497b,
		0x1bb12e1e, 0x43d23e48, 0xfb6e592d, 0xe9dbf6c3, 0x516791a6, 0xccb0a91f,
		0x740cce7a, 0x66b96194, 0xde0506f1},

	{0x00000000, 0x3d6029b0, 0x7ac05360, 0x47a07ad0, 0xf580a6c0, 0xc8e08f70, 0x8f40f5a0,
		0xb220dc10, 0x30704bc1, 0x0d106271, 0x4ab018a1, 0x77d03111, 0xc5f0ed01,
		0xf890c4b1, 0xbf30be61, 0x825097d1, 0x60e09782, 0x5d80be32, 0x1a20c4e2,
		0x2740ed52, 0x95603142, 0xa80018f2, 0xefa06222, 0xd2c04b92, 0x5090dc43,
		0x6df0f5f3, 0x2a508f23, 0x1730a693, 0xa5107a83, 0x98705333, 0xdfd029e3,
		0xe2b00053, 0xc1c12f04, 0xfca106b4, 0xbb017c64, 0x866155d4, 0x344189c4,
		0x0921a074, 0x4e81daa4, 0x73e1f314, 0xf1b164c5, 0xccd14d75, 0x8b7137a5,
		0xb6111e15, 0x0431c205, 0x3951ebb5, 0x7ef19165, 0x4391b8d5, 0xa121b886,
		0x9c419136, 0xdbe1ebe6, 0xe681c256, 0x54a11e46, 0x69c137f6, 0x2e614d26,
		0x13016496, 0x9151f347, 0xac31daf7, 0xeb91a027, 0xd6f18997, 0x64d15587,
		0x59b17c37, 0x1e1106e7, 0x23712f57, 0x58f35849, 0x659371f9, 0x22330b29,
		0x1f532299, 0xad73fe89, 0x9013d739, 0xd7b3ade9, 0xead38459, 0x68831388,
		0x55e33a38, 0x124340e8, 0x2f236958, 0x9d03b548, 0xa0639cf8, 0xe7c3e628,
		0xdaa3cf98, 0x3813cfcb, 0x0573e67b, 0x42d39cab, 0x7fb3b51b, 0xcd93690b,
		0xf0f340bb, 0xb7533a6b, 0x8a3313db, 0x0863840a, 0x3503adba, 0x72a3d76a,
		0x4fc3feda, 0xfde322ca, 0xc0830b7a, 0x872371aa, 0xba43581a, 0x9932774d,
		0xa4525efd, 0xe3f2242d, 0xde920d9d, 0x6cb2d18d, 0x51d2f83d, 0x167282ed,
		0x2b12ab5d, 0xa9423c8c, 0x9422153c, 0xd3826fec, 0xeee2465c, 0x5cc29a4c,
		0x61a2b3fc, 0x2602c92c, 0x1b62e09c, 0xf9d2e0cf, 0xc4b2c97f, 0x8312b3af,
		0xbe729a1f, 0x0c52460f, 0x31326fbf, 0x7692156f, 0x4bf23cdf, 0xc9a2ab0e,
		0xf4c282be, 0xb362f86e, 0x8e02d1de, 0x3c220dce, 0x0142247e, 0x46e25eae,
		0x7b82771e, 0xb1e6b092, 0x8c869922, 0xcb26e3f2, 0xf646ca42, 0x44661652,
		0x79063fe2, 0x3ea64532, 0x03c66c82, 0x8196fb53, 0xbcf6d2e3, 0xfb56a833,
		0xc6368183, 0x74165d93, 0x49767423, 0x0ed60ef3, 0x33b62743, 0xd1062710,
		0xec660ea0, 0xabc67470, 0x96a65dc0, 0x248681d0, 0x19e6a860, 0x5e46d2b0,
		0x6326fb00, 0xe1766cd1, 0xdc164561, 0x9bb63fb1, 0xa6d61601, 0x14f6ca11,
		0x2996e3a1, 0x6e369971, 0x5356b0c1, 0x70279f96, 0x4d47b626, 0x0ae7ccf6,
		0x3787e546, 0x85a73956, 0xb8c710e6, 0xff676a36, 0xc2074386, 0x4057d457,
		0x7d37fde7, 0x3a978737, 0x07f7ae87, 0xb5d77297, 0x88b75b27, 0xcf1721f7,
		0xf2770847, 0x10c70814, 0x2da721a4, 0x6a075b74, 0x576772c4, 0xe547aed4,
		0xd8278764, 0x9f87fdb4, 0xa2e7d404, 0x20b743d5, 0x1dd76a65, 0x5a7710b5,
		0x67173905, 0xd537e515, 0xe857cca5, 0xaff7b675, 0x92979fc5, 0xe915e8db,
		0xd475c16b, 0x93d5bbbb, 0xaeb5920b, 0x1c954e1b, 0x21f567ab, 0x66551d7b,
		0x5b3534cb, 0xd965a31a, 0xe4058aaa, 0xa3a5f07a, 0x9ec5d9ca, 0x2ce505da,
		0x11852c6a, 0x562556ba, 0x6b457f0a, 0x89f57f59, 0xb49556e9, 0xf3352c39,
		0xce550589, 0x7c75d999, 0x4115f029, 0x06b58af9, 0x3bd5a349, 0xb9853498,
		0x84e51d28, 0xc34567f8, 0xfe254e48, 0x4c059258, 0x7165bbe8, 0x36c5c138,
		0x0ba5e888, 0x28d4c7df, 0x15b4ee6f, 0x521494bf, 0x6f74bd0f, 0xdd54611f,
		0xe03448af, 0xa794327f, 0x9af41bcf, 0x18a48c1e, 0x25c4a5ae, 0x6264df7e,
		0x5f04f6ce, 0xed242ade, 0xd044036e, 0x97e479be, 0xaa84500e, 0x4834505d,
		0x755479ed, 0x32f4033d, 0x0f942a8d, 0xbdb4f69d, 0x80d4df2d, 0xc774a5fd,
		0xfa148c4d, 0x78441b9c, 0x4524322c, 0x028448fc, 0x3fe4614c, 0x8dc4bd5c,
		0xb0a494ec, 0xf704ee3c, 0xca64c78c},

	{0x00000000, 0xcb5cd3a5, 0x4dc8a10b, 0x869472ae, 0x9b914216, 0x50cd91b3, 0xd659e31d,
		0x1d0530b8, 0xec53826d, 0x270f51c8, 0xa19b2366, 0x6ac7f0c3, 0x77c2c07b,
		0xbc9e13de, 0x3a0a6170, 0xf156b2d5, 0x03d6029b, 0xc88ad13e, 0x4e1ea390,
		0x85427035, 0x9847408d, 0x531b9328, 0xd58fe186, 0x1ed33223, 0xef8580f6,
		0x24d95353, 0xa24d21fd, 0x6911f258, 0x7414c2e0, 0xbf481145, 0x39dc63eb,
		0xf280b04e, 0x07ac0536, 0xccf0d693, 0x4a64a43d, 0x81387798, 0x9c3d4720,
		0x57619485, 0xd1f5e62b, 0x1aa9358e, 0xebff875b, 0x20a354fe, 0xa6372650,
		0x6d6bf5f5, 0x706ec54d, 0xbb3216e8, 0x3da66446, 0xf6fab7e3, 0x047a07ad,
		0xcf26d408, 0x49b2a6a6, 0x82ee7503, 0x9feb45bb, 0x54b7961e, 0xd223e4b0,
		0x197f3715, 0xe82985c0, 0x23755665, 0xa5e124cb, 0x6ebdf76e, 0x73b8c7d6,
		0xb8e41473, 0x3e7066dd, 0xf52cb578, 0x0f580a6c, 0xc404d9c9, 0x4290ab67,
		0x89cc78c2, 0x94c9487a, 0x5f959bdf, 0xd901e971, 0x125d3ad4, 0xe30b8801,
		0x28575ba4, 0xaec3290a, 0x659ffaaf, 0x789aca17, 0xb3c619b2, 0x35526b1c,
		0xfe0eb8b9, 0x0c8e08f7, 0xc7d2db52, 0x4146a9fc, 0x8a1a7a59, 0x971f4ae1,
		0x5c439944, 0xdad7ebea, 0x118b384f, 0xe0dd8a9a, 0x2b81593f, 0xad152b91,
		0x6649f834, 0x7b4cc88c, 0xb0101b29, 0x36846987, 0xfdd8ba22, 0x08f40f5a,
		0xc3a8dcff, 0x453cae51, 0x8e607df4, 0x93654d4c, 0x58399ee9, 0xdeadec47,
		0x15f13fe2, 0xe4a78d37, 0x2ffb5e92, 0xa96f2c3c, 0x6233ff99, 0x7f36cf21,
		0xb46a1c84, 0x32fe6e2a, 0xf9a2bd8f, 0x0b220dc1, 0xc07ede64, 0x46eaacca,
		0x8db67f6f, 0x90b34fd7, 0x5bef9c72, 0xdd7beedc, 0x16273d79, 0xe7718fac,
		0x2c2d5c09, 0xaab92ea7, 0x61e5fd02, 0x7ce0cdba, 0xb7bc1e1f, 0x31286cb1,
		0xfa74bf14, 0x1eb014d8, 0xd5ecc77d, 0x5378b5d3, 0x98246676, 0x852156ce,
		0x4e7d856b, 0xc8e9f7c5, 0x03b52460, 0xf2e396b5, 0x39bf4510, 0xbf2b37be,
		0x7477e41b, 0x6972d4a3, 0xa22e0706, 0x24ba75a8, 0xefe6a60d, 0x1d661643,
		0xd63ac5e6, 0x50aeb748, 0x9bf264ed, 0x86f75455, 0x4dab87f0, 0xcb3ff55e,
		0x006326fb, 0xf135942e, 0x3a69478b, 0xbcfd3525, 0x77a1e680, 0x6aa4d638,
		0xa1f8059d, 0x276c7733, 0xec30a496, 0x191c11ee, 0xd240c24b, 0x54d4b0e5,
		0x9f886340, 0x828d53f8, 0x49d1805d, 0xcf45f2f3, 0x04192156, 0xf54f9383,
		0x3e134026, 0xb8873288, 0x73dbe12d, 0x6eded195, 0xa5820230, 0x2316709e,
		0xe84aa33b, 0x1aca1375, 0xd196c0d0, 0x5702b27e, 0x9c5e61db, 0x815b5163,
		0x4a0782c6, 0xcc93f068, 0x07cf23cd, 0xf6999118, 0x3dc542bd, 0xbb513013,
		0x700de3b6, 0x6d08d30e, 0xa65400ab, 0x20c07205, 0xeb9ca1a0, 0x11e81eb4,
		0xdab4cd11, 0x5c20bfbf, 0x977c6c1a, 0x8a795ca2, 0x41258f07, 0xc7b1fda9,
		0x0ced2e0c, 0xfdbb9cd9, 0x36e74f7c, 0xb0733dd2, 0x7b2fee77, 0x662adecf,
		0xad760d6a, 0x2be27fc4, 0xe0beac61, 0x123e1c2f, 0xd962cf8a, 0x5ff6bd24,
		0x94aa6e81, 0x89af5e39, 0x42f38d9c, 0xc467ff32, 0x0f3b2c97, 0xfe6d9e42,
		0x35314de7, 0xb3a53f49, 0x78f9ecec, 0x65fcdc54, 0xaea00ff1, 0x28347d5f,
		0xe368aefa, 0x16441b82, 0xdd18c827, 0x5b8cba89, 0x90d0692c, 0x8dd55994,
		0x46898a31, 0xc01df89f, 0x0b412b3a, 0xfa1799ef, 0x314b4a4a, 0xb7df38e4,
		0x7c83eb41, 0x6186dbf9, 0xaada085c, 0x2c4e7af2, 0xe712a957, 0x15921919,
		0xdececabc, 0x585ab812, 0x93066bb7, 0x8e035b0f, 0x455f88aa, 0xc3cbfa04,
		0x089729a1, 0xf9c19b74, 0x329d48d1, 0xb4093a7f, 0x7f55e9da, 0x6250d962,
		0xa90c0ac7, 0x2f987869, 0xe4c4abcc},

	{0x00000000, 0xa6770bb4, 0x979f1129, 0x31e81a9d, 0xf44f2413, 0x52382fa7, 0x63d0353a,
		0xc5a73e8e, 0x33ef4e67, 0x959845d3, 0xa4705f4e, 0x020754fa, 0xc7a06a74,
		0x61d761c0, 0x503f7b5d, 0xf64870e9, 0x67de9cce, 0xc1a9977a, 0xf0418de7,
		0x56368653, 0x9391b8dd, 0x35e6b369, 0x040ea9f4, 0xa279a240, 0x5431d2a9,
		0xf246d91d, 0xc3aec380, 0x65d9c834, 0xa07ef6ba, 0x0609fd0e, 0x37e1e793,
		0x9196ec27, 0xcfbd399c, 0x69ca3228, 0x582228b5, 0xfe552301, 0x3bf21d8f,
		0x9d85163b, 0xac6d0ca6, 0x0a1a0712, 0xfc5277fb, 0x5a257c4f, 0x6bcd66d2,
		0xcdba6d66, 0x081d53e8, 0xae6a585c, 0x9f8242c1, 0x39f54975, 0xa863a552,
		0x0e14aee6, 0x3ffcb47b, 0x998bbfcf, 0x5c2c8141, 0xfa5b8af5, 0xcbb39068,
		0x6dc49bdc, 0x9b8ceb35, 0x3dfbe081, 0x0c13fa1c, 0xaa64f1a8, 0x6fc3cf26,
		0xc9b4c492, 0xf85cde0f, 0x5e2bd5bb, 0x440b7579, 0xe27c7ecd, 0xd3946450,
		0x75e36fe4, 0xb044516a, 0x16335ade, 0x27db4043, 0x81ac4bf7, 0x77e43b1e,
		0xd19330aa, 0xe07b2a37, 0x460c2183, 0x83ab1f0d, 0x25dc14b9, 0x14340e24,
		0xb2430590, 0x23d5e9b7, 0x85a2e203, 0xb44af89e, 0x123df32a, 0xd79acda4,
		0x71edc610, 0x4005dc8d, 0xe672d739, 0x103aa7d0, 0xb64dac64, 0x87a5b6f9,
		0x21d2bd4d, 0xe47583c3, 0x42028877, 0x73ea92ea, 0xd59d995e, 0x8bb64ce5,
		0x2dc14751, 0x1c295dcc, 0xba5e5678, 0x7ff968f6, 0xd98e6342, 0xe86679df,
		0x4e11726b, 0xb8590282, 0x1e2e0936, 0x2fc613ab, 0x89b1181f, 0x4c162691,
		0xea612d25, 0xdb8937b8, 0x7dfe3c0c, 0xec68d02b, 0x4a1fdb9f, 0x7bf7c102,
		0xdd80cab6, 0x1827f438, 0xbe50ff8c, 0x8fb8e511, 0x29cfeea5, 0xdf879e4c,
		0x79f095f8, 0x48188f65, 0xee6f84d1, 0x2bc8ba5f, 0x8dbfb1eb, 0xbc57ab76,
		0x1a20a0c2, 0x8816eaf2, 0x2e61e146, 0x1f89fbdb, 0xb9fef06f, 0x7c59cee1,
		0xda2ec555, 0xebc6dfc8, 0x4db1d47c, 0xbbf9a495, 0x1d8eaf21, 0x2c66b5bc,
		0x8a11be08, 0x4fb68086, 0xe9c18b32, 0xd82991af, 0x7e5e9a1b, 0xefc8763c,
		0x49bf7d88, 0x78576715, 0xde206ca1, 0x1b87522f, 0xbdf0599b, 0x8c184306,
		0x2a6f48b2, 0xdc27385b, 0x7a5033ef, 0x4bb82972, 0xedcf22c6, 0x28681c48,
		0x8e1f17fc, 0xbff70d61, 0x198006d5, 0x47abd36e, 0xe1dcd8da, 0xd034c247,
		0x7643c9f3, 0xb3e4f77d, 0x1593fcc9, 0x247be654, 0x820cede0, 0x74449d09,
		0xd23396bd, 0xe3db8c20, 0x45ac8794, 0x800bb91a, 0x267cb2ae, 0x1794a833,
		0xb1e3a387, 0x20754fa0, 0x86024414, 0xb7ea5e89, 0x119d553d, 0xd43a6bb3,
		0x724d6007, 0x43a57a9a, 0xe5d2712e, 0x139a01c7, 0xb5ed0a73, 0x840510ee,
		0x22721b5a, 0xe7d525d4, 0x41a22e60, 0x704a34fd, 0xd63d3f49, 0xcc1d9f8b,
		0x6a6a943f, 0x5b828ea2, 0xfdf58516, 0x3852bb98, 0x9e25b02c, 0xafcdaab1,
		0x09baa105, 0xfff2d1ec, 0x5985da58, 0x686dc0c5, 0xce1acb71, 0x0bbdf5ff,
		0xadcafe4b, 0x9c22e4d6, 0x3a55ef62, 0xabc30345, 0x0db408f1, 0x3c5c126c,
		0x9a2b19d8, 0x5f8c2756, 0xf9fb2ce2, 0xc813367f, 0x6e643dcb, 0x982c4d22,
		0x3e5b4696, 0x0fb35c0b, 0xa9c457bf, 0x6c636931, 0xca146285, 0xfbfc7818,
		0x5d8b73ac, 0x03a0a617, 0xa5d7ada3, 0x943fb73e, 0x3248bc8a, 0xf7ef8204,
		0x519889b0, 0x6070932d, 0xc6079899, 0x304fe870, 0x9638e3c4, 0xa7d0f959,
		0x01a7f2ed, 0xc400cc63, 0x6277c7d7, 0x539fdd4a, 0xf5e8d6fe, 0x647e3ad9,
		0xc209316d, 0xf3e12bf0, 0x55962044, 0x90311eca, 0x3646157e, 0x07ae0fe3,
		0xa1d90457, 0x579174be, 0xf1e67f0a, 0xc00e6597, 0x66796e23, 0xa3de50ad,
		0x05a95b19, 0x34414184, 0x92364a30},

	{0x00000000, 0xccaa009e, 0x4225077d, 0x8e8f07e3, 0x844a0efa, 0x48e00e64, 0xc66f0987,
		0x0ac50919, 0xd3e51bb5, 0x1f4f1b2b, 0x91c01cc8, 0x5d6a1c56, 0x57af154f,
		0x9b0515d1, 0x158a1232, 0xd92012ac, 0x7cbb312b, 0xb01131b5, 0x3e9e3656,
		0xf23436c8, 0xf8f13fd1, 0x345b3f4f, 0xbad438ac, 0x767e3832, 0xaf5e2a9e,
		0x63f42a00, 0xed7b2de3, 0x21d12d7d, 0x2b142464, 0xe7be24fa, 0x69312319,
		0xa59b2387, 0xf9766256, 0x35dc62c8, 0xbb53652b, 0x77f965b5, 0x7d3c6cac,
		0xb1966c32, 0x3f196bd1, 0xf3b36b4f, 0x2a9379e3, 0xe639797d, 0x68b67e9e,
		0xa41c7e00, 0xaed97719, 0x62737787, 0xecfc7064, 0x205670fa, 0x85cd537d,
		0x496753e3, 0xc7e85400, 0x0b42549e, 0x01875d87, 0xcd2d5d19, 0x43a25afa,
		0x8f085a64, 0x562848c8, 0x9a824856, 0x140d4fb5, 0xd8a74f2b, 0xd2624632,
		0x1ec846ac, 0x9047414f, 0x5ced41d1, 0x299dc2ed, 0xe537c273, 0x6bb8c590,
		0xa712c50e, 0xadd7cc17, 0x617dcc89, 0xeff2cb6a, 0x2358cbf4, 0xfa78d958,
		0x36d2d9c6, 0xb85dde25, 0x74f7debb, 0x7e32d7a2, 0xb298d73c, 0x3c17d0df,
		0xf0bdd041, 0x5526f3c6, 0x998cf358, 0x1703f4bb, 0xdba9f425, 0xd16cfd3c,
		0x1dc6fda2, 0x9349fa41, 0x5fe3fadf, 0x86c3e873, 0x4a69e8ed, 0xc4e6ef0e,
		0x084cef90, 0x0289e689, 0xce23e617, 0x40ace1f4, 0x8c06e16a, 0xd0eba0bb,
		0x1c41a025, 0x92cea7c6, 0x5e64a758, 0x54a1ae41, 0x980baedf, 0x1684a93c,
		0xda2ea9a2, 0x030ebb0e, 0xcfa4bb90, 0x412bbc73, 0x8d81bced, 0x8744b5f4,
		0x4beeb56a, 0xc561b289, 0x09cbb217, 0xac509190, 0x60fa910e, 0xee7596ed,
		0x22df9673, 0x281a9f6a, 0xe4b09ff4, 0x6a3f9817, 0xa6959889, 0x7fb58a25,
		0xb31f8abb, 0x3d908d58, 0xf13a8dc6, 0xfbff84df, 0x37558441, 0xb9da83a2,
		0x7570833c, 0x533b85da, 0x9f918544, 0x111e82a7, 0xddb48239, 0xd7718b20,
		0x1bdb8bbe, 0x95548c5d, 0x59fe8cc3, 0x80de9e6f, 0x4c749ef1, 0xc2fb9912,
		0x0e51998c, 0x04949095, 0xc83e900b, 0x46b197e8, 0x8a1b9776, 0x2f80b4f1,
		0xe32ab46f, 0x6da5b38c, 0xa10fb312, 0xabcaba0b, 0x6760ba95, 0xe9efbd76,
		0x2545bde8, 0xfc65af44, 0x30cfafda, 0xbe40a839, 0x72eaa8a7, 0x782fa1be,
		0xb485a120, 0x3a0aa6c3, 0xf6a0a65d, 0xaa4de78c, 0x66e7e712, 0xe868e0f1,
		0x24c2e06f, 0x2e07e976, 0xe2ade9e8, 0x6c22ee0b, 0xa088ee95, 0x79a8fc39,
		0xb502fca7, 0x3b8dfb44, 0xf727fbda, 0xfde2f2c3, 0x3148f25d, 0xbfc7f5be,
		0x736df520, 0xd6f6d6a7, 0x1a5cd639, 0x94d3d1da, 0x5879d144, 0x52bcd85d,
		0x9e16d8c3, 0x1099df20, 0xdc33dfbe, 0x0513cd12, 0xc9b9cd8c, 0x4736ca6f,
		0x8b9ccaf1, 0x8159c3e8, 0x4df3c376, 0xc37cc495, 0x0fd6c40b, 0x7aa64737,
		0xb60c47a9, 0x3883404a, 0xf42940d4, 0xfeec49cd, 0x32464953, 0xbcc94eb0,
		0x70634e2e, 0xa9435c82, 0x65e95c1c, 0xeb665bff, 0x27cc5b61, 0x2d095278,
		0xe1a352e6, 0x6f2c5505, 0xa386559b, 0x061d761c, 0xcab77682, 0x44387161,
		0x889271ff, 0x825778e6, 0x4efd7878, 0xc0727f9b, 0x0cd87f05, 0xd5f86da9,
		0x19526d37, 0x97dd6ad4, 0x5b776a4a, 0x51b26353, 0x9d1863cd, 0x1397642e,
		0xdf3d64b0, 0x83d02561, 0x4f7a25ff, 0xc1f5221c, 0x0d5f2282, 0x079a2b9b,
		0xcb302b05, 0x45bf2ce6, 0x89152c78, 0x50353ed4, 0x9c9f3e4a, 0x121039a9,
		0xdeba3937, 0xd47f302e, 0x18d530b0, 0x965a3753, 0x5af037cd, 0xff6b144a,
		0x33c114d4, 0xbd4e1337, 0x71e413a9, 0x7b211ab0, 0xb78b1a2e, 0x39041dcd,
		0xf5ae1d53, 0x2c8e0fff, 0xe0240f61, 0x6eab0882, 0xa201081c, 0xa8c40105,
		0x646e019b, 0xeae10678, 0x264b06e6}}
View Source
var G2DB g2db
View Source
var LogDirDef, _ = os.Getwd()
View Source
var LogFilterLogger = &Logger{}
View Source
var RWUtil = rwUtil{}
View Source
var SQLName sqlName
View Source
var StatDirDef, _ = os.Getwd()

Functions

func Compress

func Compress(srcBuffer *Dm_build_0, offset int, length int, compressID int) ([]byte, error)

func GzlibCompress

func GzlibCompress(srcBuffer *Dm_build_0, offset int, length int) ([]byte, error)

func GzlibUncompress

func GzlibUncompress(srcBytes []byte) ([]byte, error)

func IsSupportedCharset

func IsSupportedCharset(charset string) bool

func NewExceInfo

func NewExceInfo() *execRetInfo

func NewSqlStat

func NewSqlStat(sql string) *sqlStat

func ParseLogLevel

func ParseLogLevel(props *Properties) int

func SetServerGroupProperties

func SetServerGroupProperties(props *Properties, key string, value string) bool

func UnCompress

func UnCompress(srcBytes []byte, compressID int) ([]byte, error)

Types

type ArrayDescriptor

type ArrayDescriptor struct {
	// contains filtered or unexported fields
}

type DmArray

type DmArray struct {
	TypeData

	// Valid为false代表DmArray数据在数据库中为NULL
	Valid bool
	// contains filtered or unexported fields
}

func NewDmArray

func NewDmArray(typeName string, elements []interface{}) *DmArray

func (*DmArray) GetBaseTypeName

func (da *DmArray) GetBaseTypeName() (string, error)

func (*DmArray) GetDoubleArray

func (da *DmArray) GetDoubleArray(index int64, count int) ([]float64, error)

func (*DmArray) GetFloatArray

func (da *DmArray) GetFloatArray(index int64, count int) ([]float32, error)

func (*DmArray) GetInt16Array

func (da *DmArray) GetInt16Array(index int64, count int) ([]int16, error)

func (*DmArray) GetInt64Array

func (da *DmArray) GetInt64Array(index int64, count int) ([]int64, error)

func (*DmArray) GetIntArray

func (da *DmArray) GetIntArray(index int64, count int) ([]int, error)

func (*DmArray) GetObjArray

func (da *DmArray) GetObjArray(index int64, count int) (interface{}, error)

func (*DmArray) Scan

func (dest *DmArray) Scan(src interface{}) error

func (DmArray) Value

func (array DmArray) Value() (driver.Value, error)

type DmBlob

type DmBlob struct {
	// contains filtered or unexported fields
}

func NewBlob

func NewBlob(value []byte) *DmBlob

func (*DmBlob) GetLength

func (lob *DmBlob) GetLength() (int64, error)

func (*DmBlob) Read

func (blob *DmBlob) Read(dest []byte) (n int, err error)

func (*DmBlob) ReadAt

func (blob *DmBlob) ReadAt(pos int, dest []byte) (n int, err error)

func (*DmBlob) Scan

func (dest *DmBlob) Scan(src interface{}) error

func (*DmBlob) Truncate

func (blob *DmBlob) Truncate(length int64) error

func (DmBlob) Value

func (blob DmBlob) Value() (driver.Value, error)

func (*DmBlob) Write

func (blob *DmBlob) Write(pos int, src []byte) (n int, err error)

type DmClob

type DmClob struct {
	// contains filtered or unexported fields
}

func NewClob

func NewClob(value string) *DmClob

func (*DmClob) GetLength

func (lob *DmClob) GetLength() (int64, error)

func (*DmClob) ReadString

func (clob *DmClob) ReadString(pos int, length int) (result string, err error)

func (*DmClob) Scan

func (dest *DmClob) Scan(src interface{}) error

func (*DmClob) Truncate

func (clob *DmClob) Truncate(length int64) error

func (DmClob) Value

func (clob DmClob) Value() (driver.Value, error)

func (*DmClob) WriteString

func (clob *DmClob) WriteString(pos int, s string) (n int, err error)

type DmConnection

type DmConnection struct {
	Access *dm_build_332

	GlobalServerSeries int
	ServerVersion      string
	Malini2            bool
	Execute2           bool
	LobEmptyCompOrcl   bool
	IsoLevel           int32
	ReadOnly           bool
	NewLobFlag         bool

	MaxRowSize         int32
	DDLAutoCommit      bool
	BackslashEscape    bool
	SvrStat            int32
	SvrMode            int32
	ConstParaOpt       bool
	DbTimezone         int16
	LifeTimeRemainder  int16
	InstanceName       string
	Schema             string
	LastLoginIP        string
	LastLoginTime      string
	FailedAttempts     int32
	LoginWarningID     int32
	GraceTimeRemainder int32
	Guid               string
	DbName             string
	StandbyHost        string
	StandbyPort        int32
	StandbyCount       int32
	SessionID          int64
	OracleDateLanguage byte
	FormatDate         string
	FormatTimestamp    string
	FormatTimestampTZ  string
	FormatTime         string
	FormatTimeTZ       string
	Local              bool
	MsgVersion         int32
	TrxStatus          int32
	// contains filtered or unexported fields
}

func (*DmConnection) Begin

func (dc *DmConnection) Begin() (driver.Tx, error)

func (*DmConnection) BeginTx

func (dc *DmConnection) BeginTx(ctx context.Context, opts driver.TxOptions) (driver.Tx, error)

func (*DmConnection) CheckNamedValue

func (dc *DmConnection) CheckNamedValue(nv *driver.NamedValue) error

func (*DmConnection) Close

func (dc *DmConnection) Close() error

func (*DmConnection) Commit

func (dc *DmConnection) Commit() error

func (*DmConnection) CompatibleMysql

func (conn *DmConnection) CompatibleMysql() bool

func (*DmConnection) CompatibleOracle

func (conn *DmConnection) CompatibleOracle() bool

func (*DmConnection) Exec

func (dc *DmConnection) Exec(query string, args []driver.Value) (driver.Result, error)

func (*DmConnection) ExecContext

func (dc *DmConnection) ExecContext(ctx context.Context, query string, args []driver.NamedValue) (driver.Result, error)

func (*DmConnection) Ping

func (dc *DmConnection) Ping(ctx context.Context) error

func (*DmConnection) Prepare

func (dc *DmConnection) Prepare(query string) (driver.Stmt, error)

func (*DmConnection) PrepareContext

func (dc *DmConnection) PrepareContext(ctx context.Context, query string) (driver.Stmt, error)

func (*DmConnection) Query

func (dc *DmConnection) Query(query string, args []driver.Value) (driver.Rows, error)

func (*DmConnection) QueryContext

func (dc *DmConnection) QueryContext(ctx context.Context, query string, args []driver.NamedValue) (driver.Rows, error)

func (*DmConnection) ResetSession

func (dc *DmConnection) ResetSession(ctx context.Context) error

func (*DmConnection) Rollback

func (dc *DmConnection) Rollback() error

type DmConnector

type DmConnector struct {
	// contains filtered or unexported fields
}

func (*DmConnector) BuildDSN

func (c *DmConnector) BuildDSN() string

func (*DmConnector) Connect

func (c *DmConnector) Connect(ctx context.Context) (driver.Conn, error)

func (*DmConnector) Driver

func (c *DmConnector) Driver() driver.Driver

type DmDecimal

type DmDecimal struct {
	Valid bool
	// contains filtered or unexported fields
}

func NewDecimalFromBigFloat

func NewDecimalFromBigFloat(bigFloat *big.Float) (*DmDecimal, error)

func NewDecimalFromBigInt

func NewDecimalFromBigInt(bigInt *big.Int) (*DmDecimal, error)

func NewDecimalFromFloat64

func NewDecimalFromFloat64(x float64) (*DmDecimal, error)

func NewDecimalFromInt64

func NewDecimalFromInt64(x int64) (*DmDecimal, error)

func NewDecimalFromString

func NewDecimalFromString(s string) (*DmDecimal, error)

func (*DmDecimal) Scan

func (dest *DmDecimal) Scan(src interface{}) error

func (DmDecimal) Sign

func (d DmDecimal) Sign() int

func (DmDecimal) String

func (d DmDecimal) String() string

func (DmDecimal) ToBigFloat

func (d DmDecimal) ToBigFloat() *big.Float

func (DmDecimal) ToBigInt

func (d DmDecimal) ToBigInt() *big.Int

func (DmDecimal) ToFloat64

func (d DmDecimal) ToFloat64() float64

func (DmDecimal) ToInt64

func (d DmDecimal) ToInt64() int64

func (DmDecimal) Value

func (d DmDecimal) Value() (driver.Value, error)

type DmDriver

type DmDriver struct {
	// contains filtered or unexported fields
}

func (*DmDriver) Open

func (d *DmDriver) Open(dsn string) (driver.Conn, error)

************************************************************

** PUBLIC METHODS AND FUNCTIONS
************************************************************

func (*DmDriver) OpenConnector

func (d *DmDriver) OpenConnector(dsn string) (driver.Connector, error)

type DmError

type DmError struct {
	ErrCode int32
	ErrText string
	// contains filtered or unexported fields
}

func (*DmError) Error

func (dmError *DmError) Error() string

func (*DmError) FormatStack

func (dmError *DmError) FormatStack() string

type DmIntervalDT

type DmIntervalDT struct {
	Valid bool
	// contains filtered or unexported fields
}

func NewDmIntervalDTByString

func NewDmIntervalDTByString(str string) (dt *DmIntervalDT, err error)

func (*DmIntervalDT) GetDTType

func (dt *DmIntervalDT) GetDTType() byte

func (*DmIntervalDT) GetDay

func (dt *DmIntervalDT) GetDay() int

func (*DmIntervalDT) GetHour

func (dt *DmIntervalDT) GetHour() int

func (*DmIntervalDT) GetMinute

func (dt *DmIntervalDT) GetMinute() int

func (*DmIntervalDT) GetMsec

func (dt *DmIntervalDT) GetMsec() int

func (*DmIntervalDT) GetSecond

func (dt *DmIntervalDT) GetSecond() int

func (*DmIntervalDT) Scan

func (dest *DmIntervalDT) Scan(src interface{}) error

func (*DmIntervalDT) String

func (dt *DmIntervalDT) String() string

func (DmIntervalDT) Value

func (dt DmIntervalDT) Value() (driver.Value, error)

type DmIntervalYM

type DmIntervalYM struct {
	Valid bool
	// contains filtered or unexported fields
}

func NewDmIntervalYMByString

func NewDmIntervalYMByString(str string) (ym *DmIntervalYM, err error)

func (*DmIntervalYM) GetMonth

func (ym *DmIntervalYM) GetMonth() int

func (*DmIntervalYM) GetYMType

func (ym *DmIntervalYM) GetYMType() byte

func (*DmIntervalYM) GetYear

func (ym *DmIntervalYM) GetYear() int

func (*DmIntervalYM) Scan

func (dest *DmIntervalYM) Scan(src interface{}) error

func (*DmIntervalYM) String

func (ym *DmIntervalYM) String() string

func (DmIntervalYM) Value

func (ym DmIntervalYM) Value() (driver.Value, error)

type DmResult

type DmResult struct {
	// contains filtered or unexported fields
}

func (*DmResult) LastInsertId

func (r *DmResult) LastInsertId() (int64, error)

************************************************************

** PUBLIC METHODS AND FUNCTIONS
************************************************************

func (*DmResult) RowsAffected

func (r *DmResult) RowsAffected() (int64, error)

type DmRows

type DmRows struct {
	CurrentRows *innerRows
	// contains filtered or unexported fields
}

func (*DmRows) Close

func (r *DmRows) Close() error

func (*DmRows) ColumnTypeDatabaseTypeName

func (r *DmRows) ColumnTypeDatabaseTypeName(index int) string

func (*DmRows) ColumnTypeLength

func (r *DmRows) ColumnTypeLength(index int) (length int64, ok bool)

func (*DmRows) ColumnTypeNullable

func (r *DmRows) ColumnTypeNullable(index int) (nullable, ok bool)

func (*DmRows) ColumnTypePrecisionScale

func (r *DmRows) ColumnTypePrecisionScale(index int) (precision, scale int64, ok bool)

func (*DmRows) ColumnTypeScanType

func (r *DmRows) ColumnTypeScanType(index int) reflect.Type

func (*DmRows) Columns

func (r *DmRows) Columns() []string

func (*DmRows) HasNextResultSet

func (r *DmRows) HasNextResultSet() bool

func (*DmRows) Next

func (r *DmRows) Next(dest []driver.Value) error

func (*DmRows) NextResultSet

func (r *DmRows) NextResultSet() error

type DmStatement

type DmStatement struct {
	// contains filtered or unexported fields
}

func NewDmStmt

func NewDmStmt(conn *DmConnection, sql string) (*DmStatement, error)

func (*DmStatement) CheckNamedValue

func (s *DmStatement) CheckNamedValue(nv *driver.NamedValue) error

func (*DmStatement) Close

func (s *DmStatement) Close() error

func (*DmStatement) Exec

func (s *DmStatement) Exec(args []driver.Value) (driver.Result, error)

func (*DmStatement) ExecContext

func (s *DmStatement) ExecContext(ctx context.Context, args []driver.NamedValue) (driver.Result, error)

func (*DmStatement) NumInput

func (s *DmStatement) NumInput() int

func (*DmStatement) Query

func (s *DmStatement) Query(args []driver.Value) (driver.Rows, error)

func (*DmStatement) QueryContext

func (s *DmStatement) QueryContext(ctx context.Context, args []driver.NamedValue) (driver.Rows, error)

type DmStruct

type DmStruct struct {
	TypeData

	// Valid为false代表DmArray数据在数据库中为NULL
	Valid bool
	// contains filtered or unexported fields
}

func (*DmStruct) Scan

func (dest *DmStruct) Scan(src interface{}) error

func (DmStruct) Value

func (dt DmStruct) Value() (driver.Value, error)

type DmTimestamp

type DmTimestamp struct {

	// Valid为false代表DmArray数据在数据库中为NULL
	Valid bool
	// contains filtered or unexported fields
}

func NewDmTimestampFromString

func NewDmTimestampFromString(str string) (*DmTimestamp, error)

func NewDmTimestampFromTime

func NewDmTimestampFromTime(time time.Time) *DmTimestamp

func (*DmTimestamp) CompareTo

func (dmTimestamp *DmTimestamp) CompareTo(ts DmTimestamp) int

func (*DmTimestamp) GetDt

func (dmTimestamp *DmTimestamp) GetDt() []int

获取年月日时分秒毫秒时区

func (*DmTimestamp) Scan

func (dest *DmTimestamp) Scan(src interface{}) error

func (*DmTimestamp) String

func (dmTimestamp *DmTimestamp) String() string

func (*DmTimestamp) ToTime

func (dmTimestamp *DmTimestamp) ToTime() time.Time

func (DmTimestamp) Value

func (dmTimestamp DmTimestamp) Value() (driver.Value, error)

type Dm_build_0

type Dm_build_0 struct {
	// contains filtered or unexported fields
}

func Dm_build_3

func Dm_build_3(dm_build_4 int) *Dm_build_0

func Dm_build_5

func Dm_build_5(dm_build_6 []byte) *Dm_build_0

func (*Dm_build_0) Dm_build_101

func (dm_build_102 *Dm_build_0) Dm_build_101(dm_build_103 string, dm_build_104 string, dm_build_105 *DmConnection) int

func (*Dm_build_0) Dm_build_107

func (dm_build_108 *Dm_build_0) Dm_build_107(dm_build_109 string, dm_build_110 string, dm_build_111 *DmConnection) int

func (*Dm_build_0) Dm_build_113

func (dm_build_114 *Dm_build_0) Dm_build_113(dm_build_115 string, dm_build_116 string, dm_build_117 *DmConnection) int

func (*Dm_build_0) Dm_build_119

func (dm_build_120 *Dm_build_0) Dm_build_119() byte

func (*Dm_build_0) Dm_build_12

func (dm_build_13 *Dm_build_0) Dm_build_12() int

func (*Dm_build_0) Dm_build_122

func (dm_build_123 *Dm_build_0) Dm_build_122() int16

func (*Dm_build_0) Dm_build_125

func (dm_build_126 *Dm_build_0) Dm_build_125() int32

func (*Dm_build_0) Dm_build_128

func (dm_build_129 *Dm_build_0) Dm_build_128() int64

func (*Dm_build_0) Dm_build_131

func (dm_build_132 *Dm_build_0) Dm_build_131() float32

func (*Dm_build_0) Dm_build_134

func (dm_build_135 *Dm_build_0) Dm_build_134() float64

func (*Dm_build_0) Dm_build_137

func (dm_build_138 *Dm_build_0) Dm_build_137() uint8

func (*Dm_build_0) Dm_build_14

func (dm_build_15 *Dm_build_0) Dm_build_14(dm_build_16 int) *Dm_build_0

func (*Dm_build_0) Dm_build_140

func (dm_build_141 *Dm_build_0) Dm_build_140() uint16

func (*Dm_build_0) Dm_build_143

func (dm_build_144 *Dm_build_0) Dm_build_143() uint32

func (*Dm_build_0) Dm_build_146

func (dm_build_147 *Dm_build_0) Dm_build_146(dm_build_148 int) []byte

func (*Dm_build_0) Dm_build_150

func (dm_build_151 *Dm_build_0) Dm_build_150() []byte

func (*Dm_build_0) Dm_build_152

func (dm_build_153 *Dm_build_0) Dm_build_152() []byte

func (*Dm_build_0) Dm_build_154

func (dm_build_155 *Dm_build_0) Dm_build_154() []byte

func (*Dm_build_0) Dm_build_156

func (dm_build_157 *Dm_build_0) Dm_build_156(dm_build_158 int) []byte

func (*Dm_build_0) Dm_build_159

func (dm_build_160 *Dm_build_0) Dm_build_159() []byte

func (*Dm_build_0) Dm_build_162

func (dm_build_163 *Dm_build_0) Dm_build_162(dm_build_164 int, dm_build_165 string, dm_build_166 *DmConnection) string

func (*Dm_build_0) Dm_build_167

func (dm_build_168 *Dm_build_0) Dm_build_167(dm_build_169 string, dm_build_170 *DmConnection) string

func (*Dm_build_0) Dm_build_17

func (dm_build_18 *Dm_build_0) Dm_build_17(dm_build_19 int) *Dm_build_0

func (*Dm_build_0) Dm_build_171

func (dm_build_172 *Dm_build_0) Dm_build_171(dm_build_173 string, dm_build_174 *DmConnection) string

func (*Dm_build_0) Dm_build_175

func (dm_build_176 *Dm_build_0) Dm_build_175(dm_build_177 string, dm_build_178 *DmConnection) string

func (*Dm_build_0) Dm_build_179

func (dm_build_180 *Dm_build_0) Dm_build_179(dm_build_181 string, dm_build_182 *DmConnection) string

func (*Dm_build_0) Dm_build_183

func (dm_build_184 *Dm_build_0) Dm_build_183(dm_build_185 int, dm_build_186 byte) int

func (*Dm_build_0) Dm_build_187

func (dm_build_188 *Dm_build_0) Dm_build_187(dm_build_189 int, dm_build_190 int16) int

func (*Dm_build_0) Dm_build_191

func (dm_build_192 *Dm_build_0) Dm_build_191(dm_build_193 int, dm_build_194 int32) int

func (*Dm_build_0) Dm_build_195

func (dm_build_196 *Dm_build_0) Dm_build_195(dm_build_197 int, dm_build_198 int64) int

func (*Dm_build_0) Dm_build_199

func (dm_build_200 *Dm_build_0) Dm_build_199(dm_build_201 int, dm_build_202 float32) int

func (*Dm_build_0) Dm_build_20

func (dm_build_21 *Dm_build_0) Dm_build_20() int

func (*Dm_build_0) Dm_build_203

func (dm_build_204 *Dm_build_0) Dm_build_203(dm_build_205 int, dm_build_206 float64) int

func (*Dm_build_0) Dm_build_207

func (dm_build_208 *Dm_build_0) Dm_build_207(dm_build_209 int, dm_build_210 uint8) int

func (*Dm_build_0) Dm_build_211

func (dm_build_212 *Dm_build_0) Dm_build_211(dm_build_213 int, dm_build_214 uint16) int

func (*Dm_build_0) Dm_build_215

func (dm_build_216 *Dm_build_0) Dm_build_215(dm_build_217 int, dm_build_218 uint32) int

func (*Dm_build_0) Dm_build_219

func (dm_build_220 *Dm_build_0) Dm_build_219(dm_build_221 int, dm_build_222 []byte) int

func (*Dm_build_0) Dm_build_22

func (dm_build_23 *Dm_build_0) Dm_build_22(dm_build_24 bool) int

func (*Dm_build_0) Dm_build_223

func (dm_build_224 *Dm_build_0) Dm_build_223(dm_build_225 int, dm_build_226 []byte) int

func (*Dm_build_0) Dm_build_227

func (dm_build_228 *Dm_build_0) Dm_build_227(dm_build_229 int, dm_build_230 []byte) int

func (*Dm_build_0) Dm_build_231

func (dm_build_232 *Dm_build_0) Dm_build_231(dm_build_233 int, dm_build_234 []byte) int

func (*Dm_build_0) Dm_build_235

func (dm_build_236 *Dm_build_0) Dm_build_235(dm_build_237 int, dm_build_238 []byte) int

func (*Dm_build_0) Dm_build_239

func (dm_build_240 *Dm_build_0) Dm_build_239(dm_build_241 int, dm_build_242 string, dm_build_243 string, dm_build_244 *DmConnection) int

func (*Dm_build_0) Dm_build_245

func (dm_build_246 *Dm_build_0) Dm_build_245(dm_build_247 int, dm_build_248 string, dm_build_249 string, dm_build_250 *DmConnection) int

func (*Dm_build_0) Dm_build_25

func (dm_build_26 *Dm_build_0) Dm_build_25(dm_build_27 int, dm_build_28 bool, dm_build_29 bool) *Dm_build_0

func (*Dm_build_0) Dm_build_251

func (dm_build_252 *Dm_build_0) Dm_build_251(dm_build_253 int, dm_build_254 string, dm_build_255 string, dm_build_256 *DmConnection) int

func (*Dm_build_0) Dm_build_257

func (dm_build_258 *Dm_build_0) Dm_build_257(dm_build_259 int, dm_build_260 string, dm_build_261 string, dm_build_262 *DmConnection) int

func (*Dm_build_0) Dm_build_263

func (dm_build_264 *Dm_build_0) Dm_build_263(dm_build_265 int) byte

func (*Dm_build_0) Dm_build_266

func (dm_build_267 *Dm_build_0) Dm_build_266(dm_build_268 int) int16

func (*Dm_build_0) Dm_build_269

func (dm_build_270 *Dm_build_0) Dm_build_269(dm_build_271 int) int32

func (*Dm_build_0) Dm_build_272

func (dm_build_273 *Dm_build_0) Dm_build_272(dm_build_274 int) int64

func (*Dm_build_0) Dm_build_275

func (dm_build_276 *Dm_build_0) Dm_build_275(dm_build_277 int) float32

func (*Dm_build_0) Dm_build_278

func (dm_build_279 *Dm_build_0) Dm_build_278(dm_build_280 int) float64

func (*Dm_build_0) Dm_build_281

func (dm_build_282 *Dm_build_0) Dm_build_281(dm_build_283 int) uint8

func (*Dm_build_0) Dm_build_284

func (dm_build_285 *Dm_build_0) Dm_build_284(dm_build_286 int) uint16

func (*Dm_build_0) Dm_build_287

func (dm_build_288 *Dm_build_0) Dm_build_287(dm_build_289 int) uint32

func (*Dm_build_0) Dm_build_290

func (dm_build_291 *Dm_build_0) Dm_build_290(dm_build_292 int, dm_build_293 int) []byte

func (*Dm_build_0) Dm_build_294

func (dm_build_295 *Dm_build_0) Dm_build_294(dm_build_296 int) []byte

func (*Dm_build_0) Dm_build_298

func (dm_build_299 *Dm_build_0) Dm_build_298(dm_build_300 int) []byte

func (*Dm_build_0) Dm_build_30

func (dm_build_31 *Dm_build_0) Dm_build_30(dm_build_32 io.Reader, dm_build_33 int) int

func (*Dm_build_0) Dm_build_302

func (dm_build_303 *Dm_build_0) Dm_build_302(dm_build_304 int) []byte

func (*Dm_build_0) Dm_build_306

func (dm_build_307 *Dm_build_0) Dm_build_306(dm_build_308 int) []byte

func (*Dm_build_0) Dm_build_310

func (dm_build_311 *Dm_build_0) Dm_build_310(dm_build_312 int, dm_build_313 string, dm_build_314 *DmConnection) string

func (*Dm_build_0) Dm_build_315

func (dm_build_316 *Dm_build_0) Dm_build_315(dm_build_317 int, dm_build_318 string, dm_build_319 *DmConnection) string

func (*Dm_build_0) Dm_build_320

func (dm_build_321 *Dm_build_0) Dm_build_320(dm_build_322 int, dm_build_323 string, dm_build_324 *DmConnection) string

func (*Dm_build_0) Dm_build_325

func (dm_build_326 *Dm_build_0) Dm_build_325(dm_build_327 int, dm_build_328 string, dm_build_329 *DmConnection) string

func (*Dm_build_0) Dm_build_36

func (dm_build_37 *Dm_build_0) Dm_build_36(dm_build_38 io.Writer) *Dm_build_0

func (*Dm_build_0) Dm_build_39

func (dm_build_40 *Dm_build_0) Dm_build_39(dm_build_41 bool) int

func (*Dm_build_0) Dm_build_43

func (dm_build_44 *Dm_build_0) Dm_build_43(dm_build_45 byte) int

func (*Dm_build_0) Dm_build_47

func (dm_build_48 *Dm_build_0) Dm_build_47(dm_build_49 int16) int

func (*Dm_build_0) Dm_build_51

func (dm_build_52 *Dm_build_0) Dm_build_51(dm_build_53 int32) int

func (*Dm_build_0) Dm_build_55

func (dm_build_56 *Dm_build_0) Dm_build_55(dm_build_57 uint8) int

func (*Dm_build_0) Dm_build_59

func (dm_build_60 *Dm_build_0) Dm_build_59(dm_build_61 uint16) int

func (*Dm_build_0) Dm_build_63

func (dm_build_64 *Dm_build_0) Dm_build_63(dm_build_65 uint32) int

func (*Dm_build_0) Dm_build_67

func (dm_build_68 *Dm_build_0) Dm_build_67(dm_build_69 uint64) int

func (*Dm_build_0) Dm_build_71

func (dm_build_72 *Dm_build_0) Dm_build_71(dm_build_73 float32) int

func (*Dm_build_0) Dm_build_75

func (dm_build_76 *Dm_build_0) Dm_build_75(dm_build_77 float64) int

func (*Dm_build_0) Dm_build_79

func (dm_build_80 *Dm_build_0) Dm_build_79(dm_build_81 []byte) int

func (*Dm_build_0) Dm_build_83

func (dm_build_84 *Dm_build_0) Dm_build_83(dm_build_85 []byte) int

func (*Dm_build_0) Dm_build_86

func (dm_build_87 *Dm_build_0) Dm_build_86(dm_build_88 []byte) int

func (*Dm_build_0) Dm_build_89

func (dm_build_90 *Dm_build_0) Dm_build_89(dm_build_91 []byte) int

func (*Dm_build_0) Dm_build_92

func (dm_build_93 *Dm_build_0) Dm_build_92(dm_build_94 []byte) int

func (*Dm_build_0) Dm_build_95

func (dm_build_96 *Dm_build_0) Dm_build_95(dm_build_97 string, dm_build_98 string, dm_build_99 *DmConnection) int

type Dm_build_1477

type Dm_build_1477 struct {
	// contains filtered or unexported fields
}

func Dm_build_1489

func Dm_build_1489(dm_build_1490 io.Reader, dm_build_1491 transform.Transformer, dm_build_1492 []byte, dm_build_1493 []byte) *Dm_build_1477

func (*Dm_build_1477) Read

func (dm_build_1495 *Dm_build_1477) Read(dm_build_1496 []byte) (int, error)

type Dm_build_1499

type Dm_build_1499 struct {
	// contains filtered or unexported fields
}

func Dm_build_1503

func Dm_build_1503() *Dm_build_1499

func (*Dm_build_1499) Dm_build_1504

func (dm_build_1505 *Dm_build_1499) Dm_build_1504() int

func (*Dm_build_1499) Dm_build_1506

func (dm_build_1507 *Dm_build_1499) Dm_build_1506(dm_build_1508 *Dm_build_0, dm_build_1509 int) int

func (*Dm_build_1499) Dm_build_1512

func (dm_build_1513 *Dm_build_1499) Dm_build_1512(dm_build_1514 []byte, dm_build_1515 int, dm_build_1516 int) int

func (*Dm_build_1499) Dm_build_1519

func (dm_build_1520 *Dm_build_1499) Dm_build_1519(dm_build_1521 io.Writer, dm_build_1522 int) int

func (*Dm_build_1499) Dm_build_1525

func (dm_build_1526 *Dm_build_1499) Dm_build_1525(dm_build_1527 []byte, dm_build_1528 int, dm_build_1529 int)

func (*Dm_build_1499) Dm_build_1536

func (dm_build_1537 *Dm_build_1499) Dm_build_1536(dm_build_1538 *Dm_build_1499)

func (*Dm_build_1499) Dm_build_1546

func (dm_build_1547 *Dm_build_1499) Dm_build_1546() []byte

type Dm_build_825

type Dm_build_825 struct {
	// contains filtered or unexported fields
}

type ExecuteTypeEnum

type ExecuteTypeEnum int
const (
	Execute ExecuteTypeEnum = iota
	ExecuteQuery
	ExecuteUpdate
)

type GoStat

type GoStat struct {
	// contains filtered or unexported fields
}

type IDGenerator

type IDGenerator int64

type InterfaceTypeData

type InterfaceTypeData interface {
	// contains filtered or unexported methods
}

type LogRecord

type LogRecord struct {
	// contains filtered or unexported fields
}

func (*LogRecord) GetError

func (record *LogRecord) GetError() error

func (*LogRecord) GetReturnValue

func (record *LogRecord) GetReturnValue() interface{}

func (*LogRecord) GetSql

func (record *LogRecord) GetSql() string

func (*LogRecord) GetUsedTime

func (record *LogRecord) GetUsedTime() time.Duration

func (*LogRecord) Set

func (record *LogRecord) Set(source interface{}, method string, params ...interface{})

func (*LogRecord) SetError

func (record *LogRecord) SetError(err error)

func (*LogRecord) SetReturnValue

func (record *LogRecord) SetReturnValue(retValue interface{})

func (*LogRecord) SetSql

func (record *LogRecord) SetSql(sql string)

func (*LogRecord) SetUsedTime

func (record *LogRecord) SetUsedTime(usedTime time.Duration)

func (*LogRecord) ToString

func (record *LogRecord) ToString() string

type Logger

type Logger struct {
}

**********************************************************************************************************

func (Logger) Debug

func (logger Logger) Debug(msg string)

func (Logger) DebugWithErr

func (logger Logger) DebugWithErr(msg string, err error)

func (Logger) ErrorWithErr

func (logger Logger) ErrorWithErr(msg string, err error)

func (Logger) Info

func (logger Logger) Info(msg string)

func (Logger) IsDebugEnabled

func (logger Logger) IsDebugEnabled() bool

func (Logger) IsErrorEnabled

func (logger Logger) IsErrorEnabled() bool

func (Logger) IsInfoEnabled

func (logger Logger) IsInfoEnabled() bool

func (Logger) IsSqlEnabled

func (logger Logger) IsSqlEnabled() bool

func (Logger) IsWarnEnabled

func (logger Logger) IsWarnEnabled() bool

func (Logger) Sql

func (logger Logger) Sql(msg string)

func (Logger) Warn

func (logger Logger) Warn(msg string)

type OptParameter

type OptParameter struct {
	// contains filtered or unexported fields
}

func (*OptParameter) String

func (parameter *OptParameter) String() string

type Properties

type Properties struct {
	// contains filtered or unexported fields
}

func NewProperties

func NewProperties() *Properties

func (*Properties) GetBool

func (g *Properties) GetBool(key string, def bool) bool

func (*Properties) GetInt

func (g *Properties) GetInt(key string, def int, min int, max int) int

func (*Properties) GetString

func (g *Properties) GetString(key, def string) string

func (*Properties) GetStringArray

func (g *Properties) GetStringArray(key string, def []string) []string

func (*Properties) GetTrimString

func (g *Properties) GetTrimString(key string, def string) string

func (*Properties) IsNil

func (g *Properties) IsNil() bool

func (*Properties) Len

func (g *Properties) Len() int

func (*Properties) Set

func (g *Properties) Set(key, value string)

func (*Properties) SetDiffProperties

func (g *Properties) SetDiffProperties(p *Properties)

如果p有g没有的键值对,添加进g中

func (*Properties) SetIfNotExist

func (g *Properties) SetIfNotExist(key, value string)

func (*Properties) SetProperties

func (g *Properties) SetProperties(p *Properties)

type RWSiteEnum

type RWSiteEnum int
const (
	PRIMARY RWSiteEnum = iota
	STANDBY
	ANYSITE
)

type SqlStatValue

type SqlStatValue struct {
	// contains filtered or unexported fields
}

type StatReader

type StatReader struct {
	// contains filtered or unexported fields
}

type StructDescriptor

type StructDescriptor struct {
	// contains filtered or unexported fields
}

type TypeData

type TypeData struct {
	// contains filtered or unexported fields
}
var TypeDataSV TypeData

type TypeDescriptor

type TypeDescriptor struct {
	// contains filtered or unexported fields
}

Directories

Path Synopsis
* Copyright (c) 2000-2018, 达梦数据库有限公司.
* Copyright (c) 2000-2018, 达梦数据库有限公司.
This is a mirror of golang.org/x/crypto/internal/subtle.
This is a mirror of golang.org/x/crypto/internal/subtle.
* Copyright (c) 2000-2018, 达梦数据库有限公司.
* Copyright (c) 2000-2018, 达梦数据库有限公司.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL