\r
namespace System.Data.OleDb\r
{\r
- public sealed class OleDbParameter : AbstractDbParameter, IDbDataParameter, ICloneable\r
+ public sealed class OleDbParameter : AbstractDbParameter\r
{\r
\r
#region Fields\r
\r
- internal OleDbType _oleDbType = OleDbType.VarWChar;\r
+ private OleDbType _oleDbType = OleDbType.VarWChar;\r
private bool _isOracleRefCursor = false;\r
\r
#endregion // Fields\r
: this (parameterName, OleDbType.VarWChar, 0, ParameterDirection.Input,\r
false, 0, 0, String.Empty, DataRowVersion.Current, value)\r
{\r
- _isDbTypeSet = false;\r
+ IsDbTypeSet = false;\r
}\r
\r
public OleDbParameter(String parameterName, OleDbType dbType)\r
get { return _oleDbType; } \r
set {\r
_oleDbType = value;\r
- _isDbTypeSet = true;\r
+ IsDbTypeSet = true;\r
}\r
} \r
+\r
+#if NET_2_0\r
+ public new byte Precision
+ {
+ get { return base.Precision; }\r
+ set { base.Precision = value; }
+ }
+
+ public new byte Scale
+ {
+ get { return base.Scale; }\r
+ set { base.Scale = value; }
+ }\r
+#endif\r
\r
public new Object Value\r
{\r
get { return base.Value; }\r
set {\r
- if (!_isDbTypeSet && (value != null) && (value != DBNull.Value)) {\r
+ if (!IsDbTypeSet && (value != null) && (value != DBNull.Value)) {\r
_oleDbType = OleDbConvert.ValueTypeToOleDbType(value.GetType());\r
}\r
base.Value = value;\r
\r
#region Methods\r
\r
- public override String ToString()\r
- {\r
- return ParameterName;\r
- }\r
- \r
- public override object Clone()\r
- {\r
- OleDbParameter clone = new OleDbParameter();\r
- CopyTo(clone);\r
-\r
- clone._oleDbType = _oleDbType;\r
- clone._isDbTypeSet = _isDbTypeSet;\r
- clone._isOracleRefCursor = _isOracleRefCursor;\r
- return clone;\r
- }\r
-\r
protected internal sealed override object ConvertValue(object value)\r
{\r
// can not convert null or DbNull to other types\r
object convertedValue = value;\r
\r
// note : if we set user parameter jdbc type inside prepare interbal, the db type is not set\r
- if (value is IConvertible && (_isDbTypeSet || IsJdbcTypeSet)) {\r
- OleDbType oleDbType = (_isDbTypeSet) ? OleDbType : OleDbConvert.JdbcTypeToOleDbType((int)JdbcType);\r
+ if (value is IConvertible && (IsDbTypeSet || IsJdbcTypeSet)) {\r
+ OleDbType oleDbType = (IsDbTypeSet) ? OleDbType : OleDbConvert.JdbcTypeToOleDbType((int)JdbcType);\r
Type to = OleDbConvert.OleDbTypeToValueType(oleDbType);\r
if (!(value is DateTime && to == DbTypes.TypeOfTimespan)) //anyway will go by jdbc type\r
convertedValue = Convert.ChangeType(value,to);\r
jdbcType = Types.VARCHAR;\r
}\r
else if(String.Compare("NCHAR",typeName,true) == 0) {\r
- jdbcType = Types.CHAR;\r
+ jdbcType = Types.VARCHAR;\r
}\r
}\r
OleDbType = OleDbConvert.JdbcTypeToOleDbType(jdbcType);\r
- JdbcType = (DbTypes.JavaSqlTypes)jdbcType;\r
+ JdbcType = jdbcType;\r
}\r
\r
protected internal sealed override void SetSpecialFeatures(ResultSet res)\r
IsOracleRefCursor = (res.getString("TYPE_NAME") == "REF CURSOR");\r
}\r
\r
- protected internal sealed override DbTypes.JavaSqlTypes JdbcTypeFromProviderType()\r
+ protected internal sealed override int JdbcTypeFromProviderType()\r
{\r
- return (DbTypes.JavaSqlTypes)OleDbConvert.OleDbTypeToJdbcType(OleDbType);\r
+ return OleDbConvert.OleDbTypeToJdbcType(OleDbType);\r
}\r
\r
#endregion // Methods\r
\r
}\r
-}
\ No newline at end of file
+}