I am connecting to Oracle Database 12.2.0.1 with direct mode. DotConnect version 9.14.1298.
DDL:
Code: Select all
CREATE TABLE TMP_GEOM
(
ID NUMBER(9,0) NOT NULL,
GEOM SDO_GEOMETRY NULL
);
ALTER TABLE TMP_GEOM ADD CONSTRAINT TMP_GEOM_PK PRIMARY KEY (ID);
insert into TMP_GEOM(id, geom) values (1, SDO_GEOMERY(:p0, :p1));
Code: Select all
// connection string=""User Id = ***; Password = ***; Server = ***; Unicode = True; Max Pool Size = 200; Direct = True; Sid = ***; Port = ***
// Now string below has 1001 characters and the test fails. When you give 1000 chars it will succeed.
const string wkt = "POLYGON((7436933.421555955 5536905.439237731,7436935.185443891 5536929.075336078,7436934.57 5536970.26,7436935.27 5536994.96,7436930.86 5537030.94,7436866.83 5537063.75,7436749.98 5537068.78,7436668.13 5537057.49,7436629.33 5537032.44,7436581.7 5536983.05,7436513.08706071 5536928.546169696,7436458.053757096 5536893.26841097,7436398.963511227 5536892.3864670005,7436220.105274477 5536966.116982741,7436191.442095496 5536993.016273761,7436180.065018321 5537015.329456167,7436112.331721563 5536953.946155982,7436120.621994864 5536932.603111951,7436206.346948573 5536832.061499576,7436524.6421515895 5536695.711,7436594.05 5536622.51,7436663.63 5536556.1,7436524.6421515895 5536695.711,7436692.74 5536543.4,7436725.2827 5536545.958,7436767.53 5536516.77,7436784.11 5536515.53,7436868.157702306 5536515.972781375,7436906.963236907 5536536.433881437,7436980.945181945 5536568.219971063,7437008.21040445754 5536662.728257681,7437009.18 5536763.89,7436993.66 5536794.23,7436933.421555955 5536905.439237731))";
const int srid = 2178;
var geomParam = new OracleParameter("p0", OracleDbType.VarChar, wkt, ParameterDirection.Input);
var sridParam = new OracleParameter("p1", OracleDbType.Integer, srid, ParameterDirection.Input);
context.Database.ExecuteSqlCommand(
@"INSERT INTO TMP_GEOM(ID, GEOM) VALUES (1, SDO_GEOMETRY(:p0, :p1))",
geomParam,
sridParam
);
Our Oracle 12.2.0.1 server properties:
NAME VALUE$ COMMENT$
---------------------------------------
DICT.BASE 2 dictionary base tables version #
DEFAULT_TEMP_TABLESPACE TEMP Name of default temporary tablespace
DEFAULT_PERMANENT_TABLESPACE SYSTEM Name of default permanent tablespace
DEFAULT_EDITION ORA$BASE Name of the database default edition
Flashback Timestamp TimeZone GMT Flashback timestamp created in GMT
TDE_MASTER_KEY_ID
DBTIMEZONE +01:00 DB time zone
DST_UPGRADE_STATE NONE State of Day Light Saving Time Upgrade
DST_PRIMARY_TT_VERSION 26 Version of primary timezone data file
DST_SECONDARY_TT_VERSION 0 Version of secondary timezone data file
DEFAULT_TBS_TYPE SMALLFILE Default tablespace type
NLS_LANGUAGE POLISH Language
NLS_TERRITORY POLAND Territory
NLS_CURRENCY zl Local currency
NLS_ISO_CURRENCY POLAND ISO currency
NLS_NUMERIC_CHARACTERS , Numeric characters
NLS_CHARACTERSET EE8MSWIN1250 Character set
NLS_CALENDAR GREGORIAN Calendar system
NLS_DATE_FORMAT RR/MM/DD Date format
NLS_DATE_LANGUAGE POLISH Date language
NLS_SORT POLISH Linguistic definition
NLS_TIME_FORMAT HH24:MI:SSXFF Time format
NLS_TIMESTAMP_FORMAT RR/MM/DD HH24:MI:SSXFF Time stamp format
NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZR Time with timezone format
NLS_TIMESTAMP_TZ_FORMAT RR/MM/DD HH24:MI:SSXFF TZR Timestamp with timezone format
NLS_DUAL_CURRENCY zl Dual currency symbol
NLS_COMP BINARY NLS comparison
NLS_LENGTH_SEMANTICS BYTE NLS length semantics
NLS_NCHAR_CONV_EXCP FALSE NLS conversion exception
NLS_NCHAR_CHARACTERSET AL16UTF16 NCHAR Character set
NLS_RDBMS_VERSION 12.2.0.1.0 RDBMS version for NLS parameters
EXPORT_VIEWS_VERSION 8 Export views revision #
WORKLOAD_CAPTURE_MODE CAPTURE implies workload capture is in progress
WORKLOAD_REPLAY_MODE PREPARE implies external replay clients can connect; REPLAY implies workload replay is in progress
MAX_STRING_SIZE STANDARD MAX_STRING_SIZE parameter used for dictionary metadata
DICTIONARY_ENDIAN_TYPE LITTLE Endian type of the data dictionary
Please, fix this bug as soon as possible.