I need a guidance on how can I update a field in CouchDB. I tried curl via console it works fine but programatically. I don’t understand how to update a particular field say ‘name’. Here is the snippet of updating a document in CouchDB which works fine and returns me the updated revision id.
HttpPut httpPutRequest = new HttpPut(hostUrl +"/"+ docId);
StringEntity body = new StringEntity(jsonDoc.toString());
httpPutRequest.setEntity(body);
httpPutRequest.setHeader("Accept", "application/json");
httpPutRequest.setHeader("Content-type", "application/json");
Partial updates are not supported by CouchDB. In other words, to update a field in the document, you must update the field in your local JSON document and push that document to CouchDB as a whole.
You can accomplish this by still issuing an HTTP PUT, ensuring the appropriate _rev is included in your document.
More details are available in the wiki.