diff --git a/ecrire/action/documenter.php b/ecrire/action/documenter.php
index f8287485c1a9bdbbafc8f1f99a1e92c31c970200..d130aa1ce2007468f4d09774a628dbdb1c51c61e 100644
--- a/ecrire/action/documenter.php
+++ b/ecrire/action/documenter.php
@@ -64,7 +64,7 @@ function action_documenter_post($r)
 			// supprimer_document_et_vignette($r['id_document']);
 			// on dissocie, mais si le doc est utilise dans le texte,
 			// il sera reassocie ..., donc condition sur vu !
-			spip_query("DELETE FROM spip_documents_".$type."s WHERE id_$type=$id AND id_document=".$r['id_document']." AND (vu='non' OR vu IS NULL)");
+			sql_delete("spip_documents_".$type."s", "id_$type=$id AND id_document=".$r['id_document']." AND (vu='non' OR vu IS NULL)");
 		}
 	}
 	if ($type == 'rubrique') {
diff --git a/ecrire/action/editer_auteur.php b/ecrire/action/editer_auteur.php
index 8ee6d46b4d095376a7d70cf93984ad66f0a59dc5..7cf39fcbfc9c07fba54e4803b3a6cbd7d327a031 100644
--- a/ecrire/action/editer_auteur.php
+++ b/ecrire/action/editer_auteur.php
@@ -200,7 +200,7 @@ function action_legender_auteur_post($r) {
 	}
 	if (is_array($restreintes)
 	AND autoriser('modifier', 'auteur', $id_auteur, NULL, array('restreint'=>$restreintes))) {
-		spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_auteur="._q($id_auteur));
+		sql_delete("spip_auteurs_rubriques", "id_auteur="._q($id_auteur));
 		foreach (array_unique($restreintes) as $id_rub)
 			if ($id_rub = intval($id_rub)) // si '0' on ignore
 				sql_insert('spip_auteurs_rubriques', "(id_auteur,id_rubrique)", "($id_auteur,$id_rub)");
diff --git a/ecrire/action/editer_auteurs.php b/ecrire/action/editer_auteurs.php
index eb22dec7c9435bfcd0ee6afe2b1b8018a80d679b..738e0073dcdfea42734426d8fab2c21a1bb8199f 100644
--- a/ecrire/action/editer_auteurs.php
+++ b/ecrire/action/editer_auteurs.php
@@ -65,7 +65,7 @@ function supprimer_auteur_et_rediriger($type, $id, $id_auteur, $redirect)
 {
 	$jointure = table_jointure('auteur', $type);
 	if (preg_match(',^[a-z]*$,',$type)){
-		spip_query("DELETE FROM spip_{$jointure} WHERE id_auteur="._q($id_auteur)." AND id_{$type}="._q($id));
+		sql_delete("spip_{$jointure}", "id_auteur="._q($id_auteur)." AND id_{$type}="._q($id));
 
 		// Notifications, gestion des revisions, reindexation...
 		pipeline('post_edition',
diff --git a/ecrire/action/editer_message.php b/ecrire/action/editer_message.php
index 55da6b7f28b2618cb4745ac32492e114cf095509..1f98b3d02a5966a4f809dcca8f387f2306a73407 100644
--- a/ecrire/action/editer_message.php
+++ b/ecrire/action/editer_message.php
@@ -46,9 +46,9 @@ function action_editer_message_dist() {
 
 // http://doc.spip.org/@action_editer_message_post_supprimer
 function action_editer_message_post_supprimer($id_message) {
-	spip_query("DELETE FROM spip_messages WHERE id_message="._q($id_message));
-	spip_query("DELETE FROM spip_auteurs_messages WHERE id_message="._q($id_message));
-	spip_query("DELETE FROM spip_forum WHERE id_message="._q($id_message));
+	sql_delete("spip_messages", "id_message="._q($id_message));
+	sql_delete("spip_auteurs_messages", "id_message="._q($id_message));
+	sql_delete("spip_forum", "id_message="._q($id_message));
 }
 
 // http://doc.spip.org/@action_editer_message_post_vu
@@ -60,12 +60,12 @@ function action_editer_message_post_vu($id_message, $id_auteur) {
 
 // http://doc.spip.org/@action_editer_message_post_retirer
 function action_editer_message_post_retirer($id_message, $id_auteur) {
-	spip_query("DELETE FROM spip_auteurs_messages WHERE id_message=$id_message AND id_auteur=$id_auteur");
+	sql_delete("spip_auteurs_messages", "id_message=$id_message AND id_auteur=$id_auteur");
 }
 
 // http://doc.spip.org/@action_editer_message_post_ajouter
 function action_editer_message_post_ajouter($id_message, $id_auteur) {
-	spip_query("DELETE FROM spip_auteurs_messages WHERE id_auteur=$id_auteur AND id_message=$id_message");
+	sql_delete("spip_auteurs_messages", "id_auteur=$id_auteur AND id_message=$id_message");
 	sql_insert('spip_auteurs_messages',
 		"(id_auteur,id_message,vu)",
 		"($id_auteur,$id_message,'non')");
@@ -119,7 +119,7 @@ function action_editer_message_post_nouveau($type, $dest='', $rv='')
 	$id_auteur = $GLOBALS['auteur_session']['id_auteur'];
 
 	$mydate = date("YmdHis", time() - 2 * 24 * 3600);
-	spip_query("DELETE FROM spip_messages WHERE (statut = 'redac') AND (date_heure < $mydate)");
+	sql_delete("spip_messages", "(statut = 'redac') AND (date_heure < $mydate)");
 
 	if ($type == 'pb') $statut = 'publie';
 	else $statut = 'redac';
diff --git a/ecrire/action/editer_mot.php b/ecrire/action/editer_mot.php
index dc2e282d7c303ce431497df431be19809c2ac8a5..74ce4e13c10cfdb73b526ef1c3bb0b48bb7a6e52 100644
--- a/ecrire/action/editer_mot.php
+++ b/ecrire/action/editer_mot.php
@@ -35,14 +35,14 @@ function action_editer_mot_post($r)
 	if ($id_mot) {
 			if ($objet)
 			  // desassocier un/des mot d'un objet precis
-				spip_query("DELETE FROM spip_mots_$table WHERE $table_id=$id_objet" . (($id_mot <= 0) ? "" : " AND id_mot=$id_mot"));
+				sql_delete("spip_mots_$table", "$table_id=$id_objet" . (($id_mot <= 0) ? "" : " AND id_mot=$id_mot"));
 			else {
 			  // disparition complete d'un mot
-			spip_query("DELETE FROM spip_mots WHERE id_mot=$id_mot");
-			spip_query("DELETE FROM spip_mots_articles WHERE id_mot=$id_mot");
-			spip_query("DELETE FROM spip_mots_rubriques WHERE id_mot=$id_mot");
-			spip_query("DELETE FROM spip_mots_syndic WHERE id_mot=$id_mot");
-			spip_query("DELETE FROM spip_mots_forum WHERE id_mot=$id_mot");
+			sql_delete("spip_mots", "id_mot=$id_mot");
+			sql_delete("spip_mots_articles", "id_mot=$id_mot");
+			sql_delete("spip_mots_rubriques", "id_mot=$id_mot");
+			sql_delete("spip_mots_syndic", "id_mot=$id_mot");
+			sql_delete("spip_mots_forum", "id_mot=$id_mot");
 			}
 	}
 	if ($nouv_mot ? $nouv_mot : ($nouv_mot = _request('nouv_mot'))) {
diff --git a/ecrire/action/editer_site.php b/ecrire/action/editer_site.php
index 6541029bb19bf12c55db784655377b182a6b07cb..b5edc7fc3a1178ab6a03c6f0e81b71973bdf8465 100644
--- a/ecrire/action/editer_site.php
+++ b/ecrire/action/editer_site.php
@@ -84,7 +84,7 @@ function action_editer_site_dist() {
 	if (_request('reload') == 'oui') {
 		// Effacer les messages si on supprime la syndication
 		if (_request('syndication') == 'non')
-			spip_query("DELETE FROM spip_syndic_articles WHERE id_syndic="._q($id_syndic));
+			sql_delete("spip_syndic_articles", "id_syndic="._q($id_syndic));
 
 		$s = spip_query("SELECT id_syndic, descriptif FROM spip_syndic WHERE id_syndic=$id_syndic AND syndication IN ('oui', 'sus', 'off') LIMIT 1");
 		if ($t = sql_fetch($s)) {
diff --git a/ecrire/action/instituer_groupe_mots.php b/ecrire/action/instituer_groupe_mots.php
index 614119e2b614a9d7f72e8f761baa7f7f7c9a32b5..ffc391c1dc145c32b13250673902c85cd05a4c0f 100644
--- a/ecrire/action/instituer_groupe_mots.php
+++ b/ecrire/action/instituer_groupe_mots.php
@@ -46,7 +46,7 @@ function action_instituer_groupe_mots_post($id_groupe)
 	$unseul = _request('unseul');
 
 	if ($id_groupe < 0){
-		spip_query("DELETE FROM spip_groupes_mots WHERE id_groupe=" . (0- $id_groupe));
+		sql_delete("spip_groupes_mots", "id_groupe=" . (0- $id_groupe));
 	} else {
 		$change_type = (corriger_caracteres($change_type));
 		$texte = (corriger_caracteres($texte));
diff --git a/ecrire/action/instituer_mot.php b/ecrire/action/instituer_mot.php
index 7547b3bdfee8d7f705882a697afdd30370c9ce16..cd1dea8d3f98f5299ad84fb4dd3a92744a8f4379 100644
--- a/ecrire/action/instituer_mot.php
+++ b/ecrire/action/instituer_mot.php
@@ -56,7 +56,7 @@ function ajouter_nouveau_mot($id_groupe, $table, $table_id, $id_mot, $id)
 		$mots = spip_query("SELECT id_mot FROM spip_mots WHERE id_groupe = $id_groupe");
 		$a = array();
 		while ($r = sql_fetch($mots)) $a[]=  $r['id_mot'];
-		spip_query("DELETE FROM spip_mots_$table WHERE id_mot IN (" . join(',',$a) .") AND $table_id=$id");
+		sql_delete("spip_mots_$table", "id_mot IN (" . join(',',$a) .") AND $table_id=$id");
 	}
 	sql_insertq("spip_mots_$table", array("id_mot" => $id_mot, $table_id => $id));
 }
diff --git a/ecrire/action/petitionner.php b/ecrire/action/petitionner.php
index 4e15255dd933b3b3ae8f2b77a5e6850622db873e..c41b851e8f80df68b5332bfdd49ad89a6ad85098 100644
--- a/ecrire/action/petitionner.php
+++ b/ecrire/action/petitionner.php
@@ -46,7 +46,7 @@ function action_petitionner_dist() {
 		);
 		break;
 	case 'off':
-		spip_query("DELETE FROM spip_petitions WHERE id_article=$id_article");
+		sql_delete("spip_petitions", "id_article=$id_article");
 		break;
 	}
 
diff --git a/ecrire/action/supprimer.php b/ecrire/action/supprimer.php
index fdb1a585be33257837745e17cacd9e006edd32dd..6920fe1943a374aaacd90a4b181dcc47ad09f5ec 100644
--- a/ecrire/action/supprimer.php
+++ b/ecrire/action/supprimer.php
@@ -48,7 +48,7 @@ function action_supprimer_document($arg) {
 function action_supprimer_rubrique($r)
 {
 	list(,,$id_rubrique) = $r;
-	spip_query("DELETE FROM spip_rubriques WHERE id_rubrique=$id_rubrique");
+	sql_delete("spip_rubriques", "id_rubrique=$id_rubrique");
 	// Les admin restreints qui n'administraient que cette rubrique
 	// deviennent redacteurs
 	// (il y a sans doute moyen de faire ca avec un having)
@@ -57,7 +57,7 @@ function action_supprimer_rubrique($r)
 
 	while ($r = sql_fetch($q)) {
 		$id_auteur = $r['id_auteur'];
-		spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_rubrique=$id_rubrique AND id_auteur=$id_auteur");
+		sql_delete("spip_auteurs_rubriques", "id_rubrique=$id_rubrique AND id_auteur=$id_auteur");
 		$n = sql_countsel("spip_auteurs_rubriques", "id_auteur=$id_auteur");
 		if (!$n)
 			spip_query("UPDATE spip_auteurs SET statut='1comite' WHERE id_auteur=$id_auteur");
@@ -79,11 +79,11 @@ function supprimer_document_et_vignette($arg)
 	$result = spip_query("SELECT id_vignette, fichier FROM spip_documents WHERE id_document=$arg");
 	if ($row = sql_fetch($result)) {
 		spip_unlink(get_spip_doc($row['fichier']));
-		spip_query("DELETE FROM spip_documents WHERE id_document=$arg");
+		sql_delete("spip_documents", "id_document=$arg");
 		spip_query("UPDATE spip_documents SET id_vignette=0 WHERE id_vignette=$arg");
-		spip_query("DELETE FROM spip_documents_articles WHERE id_document=$arg");
-		spip_query("DELETE FROM spip_documents_rubriques WHERE id_document=$arg");
-		spip_query("DELETE FROM spip_documents_breves WHERE id_document=$arg");
+		sql_delete("spip_documents_articles", "id_document=$arg");
+		sql_delete("spip_documents_rubriques", "id_document=$arg");
+		sql_delete("spip_documents_breves", "id_document=$arg");
 		$id_vignette = $row['id_vignette'];
 		if ($id_vignette > 0) {
 			$result = spip_query("SELECT fichier FROM spip_documents	WHERE id_document=$id_vignette");
@@ -91,10 +91,10 @@ function supprimer_document_et_vignette($arg)
 			if ($row = sql_fetch($result)) {
 				spip_unlink(get_spip_doc($row['fichier']));
 			}
-			spip_query("DELETE FROM spip_documents	WHERE id_document=$id_vignette");
-			spip_query("DELETE FROM spip_documents_articles	WHERE id_document=$id_vignette");
-			spip_query("DELETE FROM spip_documents_rubriques WHERE id_document=$id_vignette");
-			spip_query("DELETE FROM spip_documents_breves WHERE id_document=$id_vignette");
+			sql_delete("spip_documents", "id_document=$id_vignette");
+			sql_delete("spip_documents_articles", "id_document=$id_vignette");
+			sql_delete("spip_documents_rubriques", "id_document=$id_vignette");
+			sql_delete("spip_documents_breves", "id_document=$id_vignette");
 		}
 	}
 }
diff --git a/ecrire/genie/optimiser.php b/ecrire/genie/optimiser.php
index ab19d4f02717dadc6f8e82728cf2f436f36aba6e..a78c13f25e2bf47c9c57d9e2da7ab8547bc43142 100644
--- a/ecrire/genie/optimiser.php
+++ b/ecrire/genie/optimiser.php
@@ -75,7 +75,7 @@ function optimiser_sansref($table, $id, $sel)
 
 	if ($in) {
 		$in = join(',', array_keys($in));
-		spip_query("DELETE FROM $table WHERE " . calcul_mysql_in($id,$in));
+		sql_delete($table,  calcul_mysql_in($id,$in));
 		spip_log("Numeros des entrees $id supprimees dans la table $table: $in");
 	}
 	return count($in);
@@ -161,7 +161,7 @@ function optimiser_base_disparus($attente = 86400) {
 	// Articles
 	//
 
-	spip_query("DELETE FROM spip_articles WHERE statut='poubelle' AND maj < $mydate");
+	sql_delete("spip_articles", "statut='poubelle' AND maj < $mydate");
 
 	# les liens d'auteurs d'articles effaces
 	$res = spip_query("SELECT auteurs_articles.id_article AS id
@@ -204,7 +204,7 @@ function optimiser_base_disparus($attente = 86400) {
 	// Breves
 	//
 
-	spip_query("DELETE FROM spip_breves WHERE statut='refuse' AND maj < $mydate");
+	sql_delete("spip_breves", "statut='refuse' AND maj < $mydate");
 
 
 	# les liens de documents sur des breves effacees
@@ -240,7 +240,7 @@ function optimiser_base_disparus($attente = 86400) {
 	// Sites
 	//
 
-	spip_query("DELETE FROM spip_syndic WHERE maj < $mydate AND statut = 'refuse'");
+	sql_delete("spip_syndic", "maj < $mydate AND statut = 'refuse'");
 
 
 	# les articles syndiques appartenant a des sites effaces
@@ -314,7 +314,7 @@ function optimiser_base_disparus($attente = 86400) {
 
 	# supprimer les auteurs 'nouveau' qui n'ont jamais donne suite
 	# au mail de confirmation (45 jours pour repondre, ca devrait suffire)
-	spip_query("DELETE FROM spip_auteurs WHERE statut='nouveau' AND maj < ". _q(date('Y-m-d', time()-45*24*3600)));
+	sql_delete("spip_auteurs", "statut='nouveau' AND maj < ". _q(date('Y-m-d', time()-45*24*3600)));
 
 
 	//
@@ -334,7 +334,7 @@ function optimiser_base_disparus($attente = 86400) {
 	// Mots-cles
 	//
 
-	$result = spip_query("DELETE FROM spip_mots WHERE titre='' AND maj < $mydate");
+	$result = sql_delete("spip_mots", "titre='' AND maj < $mydate");
 
 
 	# les liens mots-articles sur des mots effaces
@@ -387,7 +387,7 @@ function optimiser_base_disparus($attente = 86400) {
 	// Forums
 	//
 
-	spip_query("DELETE FROM spip_forum WHERE statut='redac' AND maj < $mydate");
+	sql_delete("spip_forum", "statut='redac' AND maj < $mydate");
 
 
 	# les liens mots-forum sur des forums effaces
diff --git a/ecrire/inc/import.php b/ecrire/inc/import.php
index 39284069a60dacb0ee2f3e1e168b5e9ec6d86eee..711b363865b45541439be2310c9de4f04e62dcd5 100644
--- a/ecrire/inc/import.php
+++ b/ecrire/inc/import.php
@@ -150,16 +150,16 @@ function import_init_tables($request)
 		if (($table!='spip_auteurs')&&(!in_array($table,$IMPORT_tables_noerase))){
 			$desc = description_table($table);
 			if (isset($desc['field']['impt']))
-				spip_query("DELETE FROM $table WHERE impt='oui'");
+				sql_delete($table, "impt='oui'");
 			else
-				spip_query("DELETE FROM $table");
+				spip_delete($table);
 		}
 	}
 
 	// Bidouille pour garder l'acces admin actuel pendant toute la restauration
-	spip_query("DELETE FROM spip_auteurs WHERE id_auteur=0");
+	sql_delete("spip_auteurs", "id_auteur=0");
 	spip_query("UPDATE spip_auteurs SET id_auteur=0, extra=$connect_id_auteur WHERE id_auteur=$connect_id_auteur");
-	spip_query("DELETE FROM spip_auteurs WHERE id_auteur!=0");
+	sql_delete("spip_auteurs", "id_auteur!=0");
 
 	return $tables;
 }
@@ -173,7 +173,7 @@ function import_init_tables($request)
 function detruit_restaurateur()
 {
 	if (sql_countsel("spip_auteurs", "id_auteur<>0"))
-		spip_query("DELETE FROM spip_auteurs WHERE id_auteur=0");
+		sql_delete("spip_auteurs", "id_auteur=0");
 	else {
 	  	spip_query("UPDATE spip_auteurs SET id_auteur=extra WHERE id_auteur=0");
 	}
diff --git a/ecrire/inc/import_0_0.php b/ecrire/inc/import_0_0.php
index 481c2e6d75f805ed908471ca4e7f4577ece93230..79b0db75fcf5f8321bc3aa4292890d4107b81913 100644
--- a/ecrire/inc/import_0_0.php
+++ b/ecrire/inc/import_0_0.php
@@ -65,7 +65,7 @@ function inc_import_0_0_dist($f, $request, $gz='fread') {
 	spip_query("REPLACE $table (" . join(",", $cols) . ") VALUES (" . join(",", $values) . ")");
 
 	if ($is_art && $id_article) {
-		spip_query("DELETE FROM spip_auteurs_articles WHERE id_article=$id_article");
+		sql_delete("spip_auteurs_articles", "id_article=$id_article");
 		if ($auteurs) {
 			reset ($auteurs);
 			while (list(, $auteur) = each($auteurs)) {
@@ -74,11 +74,11 @@ function inc_import_0_0_dist($f, $request, $gz='fread') {
 		}
 	}
 	if ($is_mot && $id_mot) {
-		spip_query("DELETE FROM spip_mots_articles WHERE id_mot=$id_mot");
-		spip_query("DELETE FROM spip_mots_breves WHERE id_mot=$id_mot");
-		spip_query("DELETE FROM spip_mots_forum WHERE id_mot=$id_mot");
-		spip_query("DELETE FROM spip_mots_rubriques WHERE id_mot=$id_mot");
-		spip_query("DELETE FROM spip_mots_syndic WHERE id_mot=$id_mot");
+		sql_delete("spip_mots_articles", "id_mot=$id_mot");
+		sql_delete("spip_mots_breves", "id_mot=$id_mot");
+		sql_delete("spip_mots_forum", "id_mot=$id_mot");
+		sql_delete("spip_mots_rubriques", "id_mot=$id_mot");
+		sql_delete("spip_mots_syndic", "id_mot=$id_mot");
 		if ($articles) {
 			reset ($articles);
 			while (list(, $article) = each($articles)) {
diff --git a/ecrire/inc/import_1_2.php b/ecrire/inc/import_1_2.php
index aabe9638ff6e24c6771356c927a65778057b32b6..4ba628f2810521c1eb63d3588cdabe4ce4be59f8 100644
--- a/ecrire/inc/import_1_2.php
+++ b/ecrire/inc/import_1_2.php
@@ -101,28 +101,28 @@ function inc_import_1_2_dist($f, $request, $gz='fread') {
 	}
 
 	if ($type == 'article') {
-		spip_query("DELETE FROM spip_auteurs_articles WHERE id_article=$id_objet");
-		spip_query("DELETE FROM spip_documents_articles WHERE id_article=$id_objet");
+		sql_delete("spip_auteurs_articles", "id_article=$id_objet");
+		sql_delete("spip_documents_articles", "id_article=$id_objet");
 	}
 	else if ($type == 'rubrique') {
-		spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_rubrique=$id_objet");
-		spip_query("DELETE FROM spip_documents_rubriques WHERE id_rubrique=$id_objet");
+		sql_delete("spip_auteurs_rubriques", "id_rubrique=$id_objet");
+		sql_delete("spip_documents_rubriques", "id_rubrique=$id_objet");
 	}
 	else if ($type == 'breve') {
-		spip_query("DELETE FROM spip_documents_breves WHERE id_breve=$id_objet");
+		sql_delete("spip_documents_breves", "id_breve=$id_objet");
 	}
 	else if ($type == 'mot') {
-		spip_query("DELETE FROM spip_mots_articles WHERE id_mot=$id_objet");
-		spip_query("DELETE FROM spip_mots_breves WHERE id_mot=$id_objet");
-		spip_query("DELETE FROM spip_mots_forum WHERE id_mot=$id_objet");
-		spip_query("DELETE FROM spip_mots_rubriques WHERE id_mot=$id_objet");
-		spip_query("DELETE FROM spip_mots_syndic WHERE id_mot=$id_objet");
+		sql_delete("spip_mots_articles", "id_mot=$id_objet");
+		sql_delete("spip_mots_breves", "id_mot=$id_objet");
+		sql_delete("spip_mots_forum", "id_mot=$id_objet");
+		sql_delete("spip_mots_rubriques", "id_mot=$id_objet");
+		sql_delete("spip_mots_syndic", "id_mot=$id_objet");
 	}
 	else if ($type == 'auteur') {
-		spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_auteur=$id_objet");
+		sql_delete("spip_auteurs_rubriques", "id_auteur=$id_objet");
 	}
 	else if ($type == 'message') {
-		spip_query("DELETE FROM spip_auteurs_messages WHERE id_message=$id_objet");
+		sql_delete("spip_auteurs_messages", "id_message=$id_objet");
 	}
 	if ($liens) {
 		reset($liens);
diff --git a/ecrire/inc/meta.php b/ecrire/inc/meta.php
index cb23fe6d0357314b9cece128a48e579d8c7b6f4b..45829a04e8c805eac09d91437c99abb24d0b040a 100644
--- a/ecrire/inc/meta.php
+++ b/ecrire/inc/meta.php
@@ -60,7 +60,7 @@ function effacer_meta($nom) {
 	// l'invalider avant et apres la MAJ de la BD
 	// c'est un peu moints bien qu'un vrai verrou mais ca suffira
 	@touch(_FILE_META,0);
-	spip_query("DELETE FROM spip_meta WHERE nom='$nom'");
+	sql_delete("spip_meta", "nom='$nom'");
 	@touch(_FILE_META,0);
 }
 
diff --git a/ecrire/inc/revisions.php b/ecrire/inc/revisions.php
index 32bf540464b410900981f33bf9935db76d0f800c..602f084b21da9c0f90bf74552e5ff41570fc02b5 100644
--- a/ecrire/inc/revisions.php
+++ b/ecrire/inc/revisions.php
@@ -64,7 +64,7 @@ function envoi_replace_fragments($replaces) {
 // http://doc.spip.org/@envoi_delete_fragments
 function envoi_delete_fragments($id_article, $deletes) {
 	if (count($deletes)) {
-		spip_query("DELETE FROM spip_versions_fragments WHERE id_article=$id_article AND ((".	join(") OR (", $deletes)."))");
+		sql_delete("spip_versions_fragments", "id_article=$id_article AND ((".	join(") OR (", $deletes)."))");
 	}
 }
 
@@ -129,7 +129,7 @@ function supprimer_fragments($id_article, $version_debut, $version_fin) {
 	$deletes = array();
 
 	// D'abord, vider les fragments inutiles
-	spip_query("DELETE FROM spip_versions_fragments WHERE id_article=$id_article AND version_min>=$version_debut AND version_max<=$version_fin");
+	sql_delete("spip_versions_fragments", "id_article=$id_article AND version_min>=$version_debut AND version_max<=$version_fin");
 
 
 	// Fragments chevauchant l'ensemble de l'intervalle, s'ils existent
@@ -391,7 +391,7 @@ function reconstuire_version($champs, $fragments, $res=array()) {
 
 // http://doc.spip.org/@supprimer_versions
 function supprimer_versions($id_article, $version_min, $version_max) {
-	spip_query("DELETE FROM spip_versions WHERE id_article=$id_article AND id_version>=$version_min AND id_version<=$version_max");
+	sql_delete("spip_versions", "id_article=$id_article AND id_version>=$version_min AND id_version<=$version_max");
 
 	supprimer_fragments($id_article, $version_min, $version_max);
 }
@@ -515,7 +515,7 @@ function ajouter_version($id_article, $champs, $titre_version = "", $id_auteur)
 	} else {
 		spip_query("UPDATE spip_versions SET date=NOW(), champs=" . _q(serialize($codes)) . ", permanent='$permanent', titre_version=" . _q($titre_version) . " WHERE id_article=$id_article AND id_version=$id_version");
 
-		spip_query("DELETE FROM spip_versions WHERE id_article=$id_article AND id_version < 0 AND titre_version ='$date'");
+		sql_delete("spip_versions", "id_article=$id_article AND id_version < 0 AND titre_version ='$date'");
 	}
 	spip_log($onlylock . "memorise la version $id_version de l'article $id_article $titre_version");
 
diff --git a/ecrire/maj/v014.php b/ecrire/maj/v014.php
index c514cc1b00a3c6503bafc28040f4cb5c28166297..ea469dd07748cb3765fb8d5870f243dc21d7e800 100644
--- a/ecrire/maj/v014.php
+++ b/ecrire/maj/v014.php
@@ -28,7 +28,7 @@ function maj_v014_dist($version_installee, $version_cible)
 				// New style, devrait marcher
 				spip_query("INSERT INTO spip_groupes_mots 					(titre, unseul, obligatoire, articles, breves, rubriques, syndic, minirezo, comite, forum)					VALUES (\"$type\", 'non', 'non', 'oui', 'oui', 'non', 'oui', 'oui', 'oui', 'non')");
 		}
-		spip_query("DELETE FROM spip_mots WHERE titre='kawax'");
+		sql_delete("spip_mots", "titre='kawax'");
 		maj_version (1.404);
 	}
 
@@ -241,7 +241,7 @@ function maj_v014_dist($version_installee, $version_cible)
 				$vu[$titre] = true;
 				$id_groupe = $row['id_groupe'];
 				spip_query("UPDATE spip_mots SET id_groupe=$id_groupe WHERE type='$titre'");
-				spip_query("DELETE FROM spip_groupes_mots WHERE titre='$titre' AND id_groupe<>$id_groupe");
+				sql_delete("spip_groupes_mots", "titre='$titre' AND id_groupe<>$id_groupe");
 			}
 		}
 		maj_version (1.460);
diff --git a/ecrire/maj/v018.php b/ecrire/maj/v018.php
index 6b670b1c16de717767399cd5239371d4c2f4ed02..932f08683a8917b894774905fd0377a9283f6a46 100644
--- a/ecrire/maj/v018.php
+++ b/ecrire/maj/v018.php
@@ -102,7 +102,7 @@ function maj_v018_dist($version_installee, $version_cible)
 
 	// Annuler les brouillons de forum jamais valides
 	if (upgrade_vers(1.810, $version_installee, $version_cible)) {
-		spip_query("DELETE FROM spip_forum WHERE statut='redac'");
+		sql_delete("spip_forum", "statut='redac'");
 		maj_version(1.810);
 	}