Ho un problema in una pagina dove devo fare un INSERT.

Nella pagina "gestione_utenti.aspx.cs" ho il seguente codice:

codice:
sql = @"INSERT INTO administrator(cognome, nome, login, password, data_ins)

DataAccess.Execute(sql, conn);
Nella classe DataAccess c'è il metodo Execute che l'ho scritto nel seguente modo:

codice:
// esegue una query di aggiornamento
		public static void Execute(string sql, OleDbConnection conn)
{
	try 
	{
		OleDbCommand command = new OleDbCommand(sql, conn);		
		command.ExecuteNonQuery();
	} 
	catch (Exception e) 
	{
		throw e;
	}
}
Mi da il seguente errore:

Descrizione: Eccezione non gestita durante l'esecuzione della richiesta Web corrente. Per ulteriori informazioni sull'errore e sul suo punto di origine nel codice, vedere l'analisi dello stack.

Dettagli eccezione: System.Data.OleDb.OleDbException: Errore di sintassi nell'istruzione INSERT INTO.

Ma la INSERT è corretta, se la stampo a video è la seguente:

INSERT INTO administrator(cognome, nome, login, password, data_ins) VALUES('a', 'a', 'a', 'a', Now())

Come mai, chè c'è che non va ???