COUNT är ett reserverat ord i SQL. Byt namn på fältet.
Får du verkligen inget felmeddelande?
Fick lite problem med att se ifall ett sql-kommando uppdarade eller inte.
Det här är en bit av mysql-klassen jag har kodat ihop och använder:
MySQL.prototype.query = function(sql){
try{
return this.rs = this.conn.execute(sql, this.affectedRows);
} catch(e) {
if(this.debug){
Response.write("<b>An error has occured in the following sql query:</b><br>");
Response.write(sql+"<br>");
Response.write("<b>The error is:</b><br>");
Response.write(e.description);
Response.End();
} else {
Response.write("<b>An error have occured in the database.</b><br>");
Response.End();
}
}
}
MySQL.prototype.getAffectedRows = function(){
return this.affectedRows;
}
borde inte det fungera med följande:
mysql_connection.query("UPDATE Referers SET Count = Count + 1 WHERE Referer = '"+ref+"' LIMIT 1");
if(mysql_connection.getAffectedRows()==0){
mysql_connection.query("INSERT INTO Referers (Referer, Count) VALUES ('"+ref+"', '1')");
}
men jag får bara ut undefined eller 0 på getAffectedRows(). Vad kan vara fel, jag vet att den uppdaterar en rad i datbasen?
