I've just found that it's a known bug: 
<a href="http://trac.osgeo.org/grass/ticket/1139">http://trac.osgeo.org/grass/ticket/1139</a> <br><br><div class="gmail_quote">2011/11/21 G. Allegri <span dir="ltr">&lt;<a href="mailto:giohappy@gmail.com">giohappy@gmail.com</a>&gt;</span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div>The following command gives me an error:</div><div><br></div><div>&gt;&gt; v.report map=rivers option=length units=meters      </div>
<div>         </div><div>OUTPUT:    </div><div>Displaying column types/names for database connection of layer 1:</div>
<div>File di input specificato due volte (english: input file was set twice)</div><div>ERROR: There is a table connected to input vector map &#39;fiumi_princ@PERMANENT&#39;, but      there are no categories present in the key column &#39;cat&#39;. Consider using      v.to.db to correct this.</div>

<div><br></div><div>The vector layer has 227 lines and 12 categories, correctly connected to the db.</div><div>I&#39;ve also tried to update a table column and it works fine:</div><div><br></div><div>&gt;&gt; v.to.db map=rivers option=length units=meters columns=len</div>

<div><br></div><div>Working with GRASS 6.4RC1 from OSGeo4W on a Winows 7 machine.</div><div><br></div><div>giovanni</div><div><br></div><div><br></div>
</blockquote></div><br>