c# oracledbtype.int16 throws error as value either too large or too small for int16 though value is 1 or 2
<p>i searched alot on net but did not found anything.
i am inserting records in oracle table.i ahev 2 column.1 is long and other is int.
my code is:</p>

<pre><code>                Oracle.DataAccess.Client.OracleParameter param1 = new  Oracle.DataAccess.Client.OracleParameter();
                param1.Direction = ParameterDirection.Input;
                param1.ParameterName = "INCONTENT";
                param1.OracleDbType = Oracle.DataAccess.Client.OracleDbType.Long;
                param1.Value = dt.Rows[i]["Content"].ToString();

                //System.Data.OracleClient.OracleParameter param2 = new System.Data.OracleClient.OracleParameter();
                Oracle.DataAccess.Client.OracleParameter param2 = new Oracle.DataAccess.Client.OracleParameter();
                param2.Direction = ParameterDirection.Input;
                param2.ParameterName = "INID";
                param2.OracleDbType = OracleDbType.int16;
                //param2.Value = 7;
                param2.Value = dt.Rows[i]["ID"];


                oracom.Parameters.Add(param1);
                oracom.Parameters.Add(param2);


                oracom.ExecuteNonQuery();
</code></pre>

<p>when id is 1 it works fine.when id is more than 1 ,it gives error as value either too large or too small for int16.Column datatype is int,stored proc datatype is also int.
please help someone</p>
