Beispiel #1
0
 public string ToJson() =>
 IsNull
                         ? "null"
                         : OracleTimestamp.ToJson(_dateTime, _value.Nanosecond, null);
Beispiel #2
0
 public override string ToString()
 {
     return(_value.IsNull
                         ? String.Empty
                         : OracleTimestamp.FormatValue(_dateTime, _value.Nanosecond, OracleTimestamp.GetFractionPrecision(_value)));
 }
Beispiel #3
0
 public string ToSqlLiteral() =>
 IsNull
                         ? TerminalValues.Null
                         : OracleTimestamp.ToLiteral(_dateTime, _value.Nanosecond, null);
Beispiel #4
0
 public string ToXml() =>
 IsNull
                         ? null
                         : OracleTimestamp.ToXml(_dateTime, _value.Nanosecond);
Beispiel #5
0
 public string ToJson() =>
 IsNull
                         ? "null"
                         : OracleTimestamp.ToJson(this, 0, null);
Beispiel #6
0
 public override string ToString() =>
 _value.IsNull
                         ? String.Empty
                         : $"{OracleTimestamp.FormatValue(_dateTime, _value.Nanosecond, OracleTimestamp.GetFractionPrecision(_value))} {_value.TimeZone}";
Beispiel #7
0
 public string ToJson()
 {
     return(IsNull
                         ? "null"
                         : OracleTimestamp.ToJson(this, 0, null));
 }
Beispiel #8
0
 public string ToXml() =>
 IsNull
                         ? null
                         : OracleTimestamp.ToXml(this, 0);
Beispiel #9
0
 public string ToXml()
 {
     return(IsNull
                         ? null
                         : OracleTimestamp.ToXml(this, 0));
 }
Beispiel #10
0
 public string ToXml()
 {
     return(IsNull
                         ? null
                         : OracleTimestamp.ToXml(_dateTime, _value.Nanosecond));
 }
Beispiel #11
0
 public string ToJson()
 {
     return(IsNull
                         ? "null"
                         : OracleTimestamp.ToJson(_dateTime, _value.Nanosecond, _value.TimeZone));
 }
Beispiel #12
0
 public string ToSqlLiteral()
 {
     return(IsNull
                         ? TerminalValues.Null
                         : OracleTimestamp.ToLiteral(_dateTime, _value.Nanosecond, _value.TimeZone));
 }
Beispiel #13
0
		private static object[] BuildValueArray(OracleDataReader reader, IList<string> fieldTypes, bool prefetch)
		{
			var columnData = new object[fieldTypes.Count];

			for (var i = 0; i < fieldTypes.Count; i++)
			{
				var fieldType = fieldTypes[i];
				object value;
				switch (fieldType)
				{
					case "BFile":
						value = new OracleExternalBinaryFile(reader.GetOracleBFile(i));
						break;
					case "Blob":
						value = new OracleBlobValue(reader.GetOracleBlob(i));
						break;
					case "Clob":
					case "NClob":
						value = new OracleClobValue(fieldType.ToUpperInvariant(), reader.GetOracleClob(i));
						break;
					case "Long":
						var oracleString = reader.GetOracleString(i);
						var stringValue = oracleString.IsNull
							? (object)DBNull.Value
							: $"{oracleString.Value}{(oracleString.Value.Length == OracleDatabaseModel.InitialLongFetchSize ? CellValueConverter.Ellipsis : null)}";

						value = new OracleSimpleValue(stringValue);
						break;
					case "Raw":
						value = new OracleRawValue(reader.GetOracleBinary(i));
						break;
					case "LongRaw":
						value = new OracleLongRawValue(reader.GetOracleBinary(i));
						break;
					case "TimeStamp":
						value = new OracleTimestamp(reader.GetOracleTimeStamp(i));
						break;
					case "TimeStampTZ":
						value = new OracleTimestampWithTimeZone(reader.GetOracleTimeStampTZ(i));
						break;
					case "TimeStampLTZ":
						value = new OracleTimestampWithLocalTimeZone(reader.GetOracleTimeStampLTZ(i));
						break;
					case "Decimal":
						value = new OracleNumber(reader.GetOracleDecimal(i));
						break;
#if !ORACLE_MANAGED_DATA_ACCESS_CLIENT
					case "XmlType":
						value = new OracleXmlValue(reader.GetOracleXmlType(i));
						break;
#endif
					case "Object":
					case "Array":
						value = reader.GetOracleValue(i);
						break;
					case "Date":
						var oracleDate = reader.GetOracleDate(i);
						value = oracleDate.IsNull
							? new OracleDateTime()
							: new OracleDateTime(oracleDate);
						break;
					case "IntervalDS":
						value = new OracleIntervalDayToSecond(reader.GetOracleIntervalDS(i));
						break;
					case "IntervalYM":
						value = new OracleIntervalYearToMonth(reader.GetOracleIntervalYM(i));
						break;
					case "Char":
					case "NChar":
					case "Varchar":
					case "Varchar2":
					case "NVarchar":
					case "NVarchar2":
						value = new OracleSimpleValue(reader.GetValue(i));
						break;
					case OracleRowId.TypeName:
						value = new OracleRowId(reader.GetOracleString(i));
						break;
					default:
						value = reader.GetValue(i);
						break;
				}

				if (prefetch)
				{
					var largeValue = value as ILargeValue;
				    largeValue?.Prefetch();
				}

				columnData[i] = value;
			}

			return columnData;
		}