A guess:
Your problem lies in line
cmd.Parameters.AddWithValue("@t", lbl_clbal.Text);
The solution depends on the datatype defined for "balance" column. You may have to parse the text to a compatible type.
Something like:
int balance;
int.TryParse(lbl_clbal.Text, out balance));
cmd.Parameters.AddWithValue("@t", balance);
If the value in the TextBox is not a valid integer, then balance will be zero.
[EDIT] Changed from double to int as per OP informations [ /EDIT ]