I miei campi li inizializzo così e poi richiamo la classe:
codice:
				Int32 Id;
				string tableName="[stati]";
				string nomeId="ID_Stati";
				Id= Convert.ToInt32(Request.QueryString["Cod"]);
				Access.cancRecord(tableName, nomeId, Id);
La classe fa questo:

codice:
		public static void cancRecord(string tableName, string nomeId, Int32 Id)
		{
			OleDbConnection conn = new OleDbConnection(connString);
			conn.Open();
			OleDbCommand comm = new OleDbCommand("DELETE FROM " + tableName + " WHERE " + nomeId + "=" + Id  ,conn);
			comm.ExecuteNonQuery();
			conn.Close(); 
		}
---

Essendo il pezzo sopra tra try e chatc, mi finisce nel catch ma non capisco come mai... cosa non riesce a fare? da dove viene generato l'errore?