QueryParameter.cs 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Data;
  5. using System.Data.Common;
  6. using System.Data.OleDb;
  7. namespace Ant.Data
  8. {
  9. /// <summary>
  10. /// SQLÃüÁî²ÎÊýÀà
  11. /// </summary>
  12. public sealed class QueryParameter : MarshalByRefObject, IDataParameter, ICloneable
  13. {
  14. private DbType m_DbType;
  15. private ParameterDirection m_Direction;
  16. private bool m_IsNullable;
  17. private string m_ParameterName ;
  18. private int m_Size;
  19. private byte m_precision;
  20. private byte m_scale;
  21. private string m_SourceColumn;
  22. private DataRowVersion m_SourceVersion;
  23. private object m_Value;
  24. #region IDataParameter ³ÉÔ±
  25. public DbType DbType
  26. {
  27. get
  28. {
  29. return m_DbType;
  30. }
  31. set
  32. {
  33. m_DbType = value;
  34. }
  35. }
  36. public ParameterDirection Direction
  37. {
  38. get
  39. {
  40. return m_Direction;
  41. }
  42. set
  43. {
  44. m_Direction = value;
  45. }
  46. }
  47. public bool IsNullable
  48. {
  49. get { return m_IsNullable; }
  50. set { m_IsNullable = value; }
  51. }
  52. public string ParameterName
  53. {
  54. get
  55. {
  56. return m_ParameterName;
  57. }
  58. set
  59. {
  60. m_ParameterName = value;
  61. }
  62. }
  63. public byte Precision
  64. {
  65. get { return m_precision; }
  66. set { m_precision = value; }
  67. }
  68. public byte Scale
  69. {
  70. get { return m_scale; }
  71. set { m_scale = value; }
  72. }
  73. public int Size
  74. {
  75. get { return m_Size; }
  76. set { m_Size = value; }
  77. }
  78. public string SourceColumn
  79. {
  80. get
  81. {
  82. return m_SourceColumn;
  83. }
  84. set
  85. {
  86. m_SourceColumn = value;
  87. }
  88. }
  89. public DataRowVersion SourceVersion
  90. {
  91. get
  92. {
  93. return m_SourceVersion;
  94. }
  95. set
  96. {
  97. m_SourceVersion = value;
  98. }
  99. }
  100. public object Value
  101. {
  102. get
  103. {
  104. return m_Value;
  105. }
  106. set
  107. {
  108. m_Value = value;
  109. }
  110. }
  111. public QueryParameter()
  112. {
  113. m_Value = null;
  114. m_Direction = ParameterDirection.Input;
  115. m_Size = 0;
  116. m_SourceVersion = DataRowVersion.Current;
  117. }
  118. public QueryParameter(string parameterName, object Value)
  119. : this()
  120. {
  121. m_ParameterName = parameterName;
  122. m_Value = Value;
  123. }
  124. public QueryParameter(string parameterName, object Value, DbType dbType):this(parameterName,Value)
  125. {
  126. m_DbType = dbType;
  127. }
  128. public QueryParameter(string parameterName, DbType dbType)
  129. : this()
  130. {
  131. m_ParameterName = parameterName;
  132. m_DbType = dbType;
  133. }
  134. public QueryParameter(string parameterName, DbType dbType, int size):this()
  135. {
  136. m_ParameterName = parameterName;
  137. m_DbType = dbType;
  138. m_Size = size;
  139. }
  140. public QueryParameter(string parameterName, DbType dbType, int size,string sourceColumn)
  141. : this()
  142. {
  143. m_ParameterName = parameterName;
  144. m_DbType = dbType;
  145. m_Size = size;
  146. m_SourceColumn = sourceColumn;
  147. }
  148. public QueryParameter(string parameterName, DbType dbType, int size,ParameterDirection direction, bool isNullable,byte precision,byte scale, string sourceColumn, DataRowVersion sourceVersion, object Value)
  149. : this()
  150. {
  151. m_ParameterName = parameterName;
  152. m_DbType = dbType;
  153. m_Size = size;
  154. m_Direction = direction;
  155. m_IsNullable = isNullable;
  156. m_precision = precision;
  157. m_scale = scale;
  158. m_SourceColumn = sourceColumn;
  159. m_SourceVersion = sourceVersion;
  160. m_Value = Value;
  161. }
  162. public override string ToString()
  163. {
  164. return m_ParameterName;
  165. }
  166. #endregion
  167. #region ICloneable ³ÉÔ±
  168. public object Clone()
  169. {
  170. QueryParameter parameter1;
  171. parameter1 = new QueryParameter(m_ParameterName, m_DbType,m_Size, m_Direction, m_IsNullable,m_precision,m_scale, m_SourceColumn, m_SourceVersion, m_Value);
  172. return parameter1;
  173. }
  174. #endregion
  175. }
  176. }