Ejemplo n.º 1
0
        public OracleTimestampWithLocalTimeZone(OracleTimeStampLTZ timeStamp)
        {
            _value = timeStamp;

            if (!timeStamp.IsNull)
            {
                _dateTime = new OracleDateTime(timeStamp.Year, timeStamp.Month, timeStamp.Day, timeStamp.Hour, timeStamp.Minute, timeStamp.Second);
            }
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="format"></param>
        /// <param name="date"></param>
        /// <param name="dateTime"></param>
        /// <returns></returns>
        protected internal bool ConvertToDateTimeFromOracleInternal(OracleDateTimeFormat format, object date, out DateTime dateTime)
        {
            dateTime = DateTime.MinValue;
            if (date == null)
            {
                return(false);
            }

            try
            {
                switch (format)
                {
                case OracleDateTimeFormat.ORACLE_DATE:
                    var oracleDate = new OracleDate((string)date);
                    if (oracleDate != OracleDate.Null)
                    {
                        dateTime = oracleDate.Value;
                    }
                    break;

                case OracleDateTimeFormat.ORACLE_TIMESTAMP:
                    var oracleTSDate = new OracleTimeStamp((string)date);
                    if (oracleTSDate != OracleTimeStamp.Null)
                    {
                        dateTime = oracleTSDate.Value;
                    }
                    break;

                case OracleDateTimeFormat.ORACLE_TIMESTAMP_TZ:
                    var oracleTSZDate = new OracleTimeStampTZ((string)date);
                    if (oracleTSZDate != OracleTimeStampTZ.Null)
                    {
                        dateTime = oracleTSZDate.Value;
                    }
                    break;

                case OracleDateTimeFormat.ORACLE_TIMESTAMP_LTZ:
                    var oracleLTSZDate = new OracleTimeStampLTZ((string)date);
                    if (oracleLTSZDate != OracleTimeStampLTZ.Null)
                    {
                        dateTime = oracleLTSZDate.Value;
                    }
                    break;

                default:
                    throw new ApplicationException("Invalid format specified");
                }
            }
            catch (Exception)
            {
                return(false);
            }
            return(true);
        }
Ejemplo n.º 3
0
 private void TableDependency_Changed(object sender, RecordChangedEventArgs <DataTimeModel> e)
 {
     switch (e.ChangeType)
     {
     case ChangeType.Insert:
         dateColumReturned                  = e.Entity.DateColum;
         timeStampColumnReturned            = new OracleTimeStamp(e.Entity.TimeStampColumn);
         timeStampWithTimeZoneReturned      = e.Entity.TimeStampWithTimeZone;
         timeStampWithLocalTimeZoneReturned = new OracleTimeStampLTZ(e.Entity.TimeStampWithLocalTimeZone);
         intervalDayToSecondColumnReturned  = new OracleIntervalDS(e.Entity.IntervalDayToSecondColumn);
         intervalYearToMonthColumnReturned  = new OracleIntervalYM(e.Entity.IntervalYearToMonthColumn);
         break;
     }
 }
Ejemplo n.º 4
0
        public static void ClassInitialize(TestContext testContext)
        {
            OracleHelper.DropTable(ConnectionString, TableName);

            using (var connection = new OracleConnection(ConnectionString))
            {
                connection.Open();
                using (var command = connection.CreateCommand())
                {
                    command.CommandText = $"CREATE TABLE {TableName}(DATECOLUM DATE,TIMESTAMPCOLUMN TIMESTAMP(6),TIMESTAMPWITHTIMEZONE TIMESTAMP WITH TIME ZONE,TIMESTAMPWITHLOCALTIMEZONE TIMESTAMP WITH LOCAL TIME ZONE, INTERVALDAYTOSECONDCOLUMN INTERVAL DAY(2) TO SECOND(6),INTERVALYEARTOMONTHCOLUMN INTERVAL YEAR(2) TO MONTH)";
                    command.ExecuteNonQuery();
                }
            }

            dateColum                  = DateTime.Now;
            timeStampColumn            = new OracleTimeStamp(DateTime.Now);
            timeStampWithLocalTimeZone = OracleTimeStampLTZ.GetSysDate();
            timeStampWithTimeZone      = DateTimeOffset.Now;
            intervalDayToSecondColumn  = new OracleIntervalDS(1);
            intervalYearToMonthColumn  = new OracleIntervalYM(2);
        }
Ejemplo n.º 5
0
        private object GetValue(OracleDecimal number, OracleDate date, OracleTimeStamp timestamp, OracleTimeStampTZ timestampWithTimezone, OracleTimeStampLTZ timestampWithLocalTimeZone, OracleIntervalYM yearToMonth, OracleIntervalDS dayToSecond)
        {
            if (!LimitValuesAvailable)
            {
                return(null);
            }

            if (_valueType == typeof(OracleDecimal))
            {
                return(number.IsNull ? null : new OracleNumber(number));
            }

            if (_valueType == typeof(OracleDate))
            {
                return(date.IsNull ? null : new OracleDateTime(date));
            }

            if (_valueType == typeof(OracleTimeStamp))
            {
                return(timestamp.IsNull ? null : new OracleTimestamp(timestamp));
            }

            if (_valueType == typeof(OracleTimeStampTZ))
            {
                return(timestampWithTimezone.IsNull ? null : new OracleTimestampWithTimeZone(timestampWithTimezone));
            }

            if (_valueType == typeof(OracleTimeStampLTZ))
            {
                return(timestampWithLocalTimeZone.IsNull ? null : new OracleTimestampWithLocalTimeZone(timestampWithLocalTimeZone));
            }

            if (_valueType == typeof(OracleIntervalYM))
            {
                return(yearToMonth.IsNull ? null : new OracleIntervalYearToMonth(yearToMonth));
            }

            if (_valueType == typeof(OracleIntervalDS))
            {
                return(dayToSecond.IsNull ? null : new OracleIntervalDayToSecond(dayToSecond));
            }

            return(null);
        }
Ejemplo n.º 6
0
 public OracleTimeStampLtzField(OracleTimeStampLTZ value)
 {
     _value = value;
 }
Ejemplo n.º 7
0
 internal static bool IsEqual(OracleTimeStampLTZ?val1, OracleTimeStampLTZ?val2) =>
 val1.Value.IsNull != val2.Value.IsNull
         ? false
         : (val1.Value.IsNull && val2.Value.IsNull) ||
 OracleTimeStampLTZ.SetPrecision(val1.Value, OracleTimeStampPrecisionCompare).Equals(OracleTimeStampLTZ.SetPrecision(val2.Value, OracleTimeStampPrecisionCompare));
Ejemplo n.º 8
0
		private object GetValue(OracleDecimal number, OracleDate date, OracleTimeStamp timestamp, OracleTimeStampTZ timestampWithTimezone, OracleTimeStampLTZ timestampWithLocalTimeZone, OracleIntervalYM yearToMonth, OracleIntervalDS dayToSecond)
		{
			if (!LimitValuesAvailable)
			{
				return null;
			}

			if (_valueType == typeof(OracleDecimal))
			{
				return number.IsNull ? null : new OracleNumber(number);
			}

			if (_valueType == typeof(OracleDate))
			{
				return date.IsNull ? null : new OracleDateTime(date);
			}

			if (_valueType == typeof(OracleTimeStamp))
			{
				return timestamp.IsNull ? null : new OracleTimestamp(timestamp);
			}

			if (_valueType == typeof(OracleTimeStampTZ))
			{
				return timestampWithTimezone.IsNull ? null : new OracleTimestampWithTimeZone(timestampWithTimezone);
			}

			if (_valueType == typeof(OracleTimeStampLTZ))
			{
				return timestampWithLocalTimeZone.IsNull ? null : new OracleTimestampWithLocalTimeZone(timestampWithLocalTimeZone);
			}

			if (_valueType == typeof(OracleIntervalYM))
			{
				return yearToMonth.IsNull ? null : new OracleIntervalYearToMonth(yearToMonth);
			}

			if (_valueType == typeof(OracleIntervalDS))
			{
				return dayToSecond.IsNull ? null : new OracleIntervalDayToSecond(dayToSecond);
			}

			return null;
		}