[BioC] RMySQL, for loop problem...
Herve Pages
hpages at fhcrc.org
Fri Jun 15 21:56:08 CEST 2007
Hi Alessandro,
Alessandro Bruselles wrote:
> I'm trying to do a little loop using the RMySQL package to update some
> fields in my db
> but I can't find a way;
> the loop should be this:
>
> /for (i in 1:nrow(geni_FClow)){
> dbGetQuery(con, "update GO_DC5_vs_50PC3_apoptosis set FC_low =
> geni_FClow$FC_low[i] where geni like geni_FClow$geni[i]")
> }/
R is not PHP ;-)
> x <- "'letters[1]' is the first letter of the latin alphabet"
> x
[1] "'letters[1]' is the first letter of the latin alphabet"
No variable substitution in string 'x'. That's why you don't get
this:
[1] "'a' is the first letter of the latin alphabet"
Cheers,
H.
>
> but I get the following error:
>
> /Errore in mysqlExecStatement(conn, statement, ...) :
> RS-DBI driver: (could not run statement: You have an error in
> your SQL syntax; check the manual that corresponds to your MySQL server
> version for the right syntax to use near '[i] where geni like
> geni_FClow$geni[i]' at line 1)/
>
> while the simple statement:
>
> /dbGetQuery(con, "update GO_DC5_vs_50PC3_apoptosis set FC_low =
> geni_FClow$FC_low[2] where geni like geni_FClow$geni[2]")/
>
> (using a number instead of the [i])
> works!
>
> Any help would be appreciated
> (I know maybe the answer is so simple I cannot see it...)
>
More information about the Bioconductor
mailing list