2012-10-10 3 views
0

J'ai un fichier Excel avec 2 feuilles et je souhaite mettre à jour certaines valeurs dans la feuille 'Données'. J'utilise les prochaines commandes simples:System.Data.OleDb.OleDbException: erreur de syntaxe dans l'instruction UPDATE

var myCommand = new OleDbCommand(); 
var sql = "Update [Sheet2$] set Status = 'New_value' WHERE Building = 12"; 
var myConnection = new OleDbConnection(connectionString); 
myCommand.CommandText = sql; 
myCommand.ExecuteNonQuery(); 

J'obtiens l'erreur:

System.Data.OleDb.OleDbException : Syntax error in UPDATE statement 

J'ai aussi essayé:

var sql = "Update [Sheet2$] set Status = 'New_value' WHERE Building = '12'"; 

mais sans succès. Quel est le problème ici?

+0

Pourriez-vous montrer votre chaîne de connexion? Utilisez-vous HDR = YES? – Steve

+0

Salut, merci pour suggestion. Je l'ai changé en 'HDR = YES' et utilisé la deuxième réponse ([Status]) et cela a fonctionné. – SimonD

+0

Mais il est nécessaire de mettre les crochets après le HDR = YES? – Steve

Répondre

1

échapper à la colonne status

var sql = "Update [Sheet2$] set [Status] = 'New_value' WHERE Building = 12";