mohammad_2039
یک شنبه 19 اردیبهشت 1389, 09:45 صبح
با سلام به دوستان گرامی.
من میخوام یکی از فیلدهای جدول رو بخونم و به ترتیب از بالا به پایین در یه عدد ضرب کنم و نتیجه رو در یه تیبل دیگه نمایش بدم. این کار رو با کد زیر انجام میدم.
SqlCommand cmd = new SqlCommand("select * from tbl_table", sqlConnection1);
sqlConnection1.Open();
SqlDataReader reader = cmd.ExecuteReader();
int FieldCount = reader.FieldCount;
object[] Values = new object[FieldCount];
while (reader.Read())
{
reader.GetValues(Values);
int mablag = reader.GetInt32(0);
for (int n = 2; n != FieldCount; n++)
{
double kol = (mablag * 700);
//statments for insert into DataBase
}
}
reader.Close();
sqlConnection1.Close();
مشکل اینجاست که وقتی اعداد کوچک و در حد میلیون باشه خیلی خوب جواب میده و مشکلی نداره:لبخند: اما وقتی اعداد به چند صد میلیون و میلیارد میرسه نتایج بدست اومده بسیار عجیب و غریبه:متعجب::متفکر: با اینکه دو عدد مثبت در هم ضرب میشن اما نتایج اعداد بزرگ، نا مرتبط و منفی درمیاد:عصبانی:هر چقدر هم نوع های داده رو تغییر میدم نتیجه نمی گیرم. این خط از کد:
int mablag = reader.GetInt32(0);
فقط همین حالت رو قبول میکنه و در بقیه نوع های داده که استفاده میکنم خطای invalid cast میده. نوع داده در جدول bigint هست. خواهش میکنم کمکم کنید. متشکرم
من میخوام یکی از فیلدهای جدول رو بخونم و به ترتیب از بالا به پایین در یه عدد ضرب کنم و نتیجه رو در یه تیبل دیگه نمایش بدم. این کار رو با کد زیر انجام میدم.
SqlCommand cmd = new SqlCommand("select * from tbl_table", sqlConnection1);
sqlConnection1.Open();
SqlDataReader reader = cmd.ExecuteReader();
int FieldCount = reader.FieldCount;
object[] Values = new object[FieldCount];
while (reader.Read())
{
reader.GetValues(Values);
int mablag = reader.GetInt32(0);
for (int n = 2; n != FieldCount; n++)
{
double kol = (mablag * 700);
//statments for insert into DataBase
}
}
reader.Close();
sqlConnection1.Close();
مشکل اینجاست که وقتی اعداد کوچک و در حد میلیون باشه خیلی خوب جواب میده و مشکلی نداره:لبخند: اما وقتی اعداد به چند صد میلیون و میلیارد میرسه نتایج بدست اومده بسیار عجیب و غریبه:متعجب::متفکر: با اینکه دو عدد مثبت در هم ضرب میشن اما نتایج اعداد بزرگ، نا مرتبط و منفی درمیاد:عصبانی:هر چقدر هم نوع های داده رو تغییر میدم نتیجه نمی گیرم. این خط از کد:
int mablag = reader.GetInt32(0);
فقط همین حالت رو قبول میکنه و در بقیه نوع های داده که استفاده میکنم خطای invalid cast میده. نوع داده در جدول bigint هست. خواهش میکنم کمکم کنید. متشکرم