Earlier quoted context omitted.
> I have a feeling you haven't used SQL databases very often. No, I've not. I just never liked the way it worked so I have to honest and open about my prejudice. > This is exactly the kind of thing that [...] noSQL databases do poorly. That's really not true. I've built web apps that do pretty much exactly what that voting apps does and I use CouchDB to do it because it was built specifically for this kind of thing,…
You're right, I have not used CouchDB, but from my understanding it shines on unstructured data, where you might need to store slightly different things from different places. But in a voting application structuring the data is actually very very helpful, it keeps bad data out, and helps with auditing.
Validating data is something you can and should do before saving it in the DB and with CouchDB that would be done with a "design document" using javascript.
In this case validating that user input is a positive number or a zero should be done on the client side before even submitting the data as well.