Why does the DBF driver handle like when using v.db.select?
On Wed, Apr 6, 2011 at 4:29 PM, Richard Chirgwin <[email protected]> wrote: > On 6/04/11 4:36 PM, [email protected] wrote: >> >> Message: 9 >> Date: Wed, 6 Apr 2011 16:06:13 +0930 >> From: Sharon M<[email protected]> >> Subject: [GRASS-user] help with v.db.update >> To:[email protected] >> Message-ID:<[email protected]> >> Content-Type: text/plain; charset=ISO-8859-1 >> >> I'm trying to update an attribute table column using v.db.update with >> the DBF driver and keep getting a dbmi: Protocol error message. >> >> Example using Spearfish >> >> g.copy vect=fields,myfields >> >> v.db.addcol myfields col="polynum integer" >> >> v.db.select myfields where="label like 'V%'" >> cat|label|polynum >> 59|V. White#1| >> >> v.db.update myfields col=polynum val=42 where="label like 'V%'" >> dbmi: Protocol error >> ERROR: Error while executing: 'UPDATE myfields SET polynum=42 WHERE >> label like V% >> ' >> >> I've tried this on both winGrass 6.4 rc2 or winGrass 6.5 r45847 on >> winXP using the wxGUI via both the v.db.update module and the wxgui >> command line and get the same error issue. >> >> What am I doing wrong? Can anyone help please? >> >> Thanks in advance! > > The dbf driver doesn't handle "like". Try: > > v.db.update myfields column=polynum val=42 where='cat=59' > > and see what happens ... > > If you need more advanced query parameters such as "like", use a different > database driver - pg or mysql. > > Richard > If > > _______________________________________________ grass-user mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/grass-user
