<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: PUT is not UPDATE</title>
	<atom:link href="http://cafe.elharo.com/web/put-is-not-update/feed/" rel="self" type="application/rss+xml" />
	<link>http://cafe.elharo.com/web/put-is-not-update/</link>
	<description>Longer than a blog; shorter than a book</description>
	<lastBuildDate>Wed, 08 Feb 2012 21:45:25 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
	<item>
		<title>By: kominki</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-771259</link>
		<dc:creator>kominki</dc:creator>
		<pubDate>Thu, 18 Aug 2011 20:40:02 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-771259</guid>
		<description>I in addition to my friends have been looking through the good secrets located on the website then all of a sudden got an awful feeling I never thanked you for those strategies. All of the men are already totally happy to study all of them and already have sincerely been using these things. Appreciate your indeed being well helpful and for opting for variety of decent issues most people are really wanting to be aware of. My personal honest regret for not expressing appreciation to you earlier.</description>
		<content:encoded><![CDATA[<p>I in addition to my friends have been looking through the good secrets located on the website then all of a sudden got an awful feeling I never thanked you for those strategies. All of the men are already totally happy to study all of them and already have sincerely been using these things. Appreciate your indeed being well helpful and for opting for variety of decent issues most people are really wanting to be aware of. My personal honest regret for not expressing appreciation to you earlier.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Licea Krakowskie</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-330781</link>
		<dc:creator>Licea Krakowskie</dc:creator>
		<pubDate>Mon, 29 Dec 2008 20:29:43 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-330781</guid>
		<description>Great!!! Often times you only want to update select columns in a table, as some may rarely if ever change.</description>
		<content:encoded><![CDATA[<p>Great!!! Often times you only want to update select columns in a table, as some may rarely if ever change.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Meble</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-134783</link>
		<dc:creator>Meble</dc:creator>
		<pubDate>Sat, 29 Sep 2007 14:00:16 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-134783</guid>
		<description>Iâ€™m pleased people are at least talking about how to use HTTP properly, even if we get it wrong sometimes. Just think how much further weâ€™d be down this road if we spent as much time on it as has been spent on WS-* and SOAP.</description>
		<content:encoded><![CDATA[<p>Iâ€™m pleased people are at least talking about how to use HTTP properly, even if we get it wrong sometimes. Just think how much further weâ€™d be down this road if we spent as much time on it as has been spent on WS-* and SOAP.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul Downey &#187; Blog Archive &#187; A New Resource, Please</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-70494</link>
		<dc:creator>Paul Downey &#187; Blog Archive &#187; A New Resource, Please</dc:creator>
		<pubDate>Sat, 31 Mar 2007 07:17:49 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-70494</guid>
		<description>[...] Other people disagree, but the most convincing comments against my preference come from an optimistic Paul. [...]</description>
		<content:encoded><![CDATA[<p>[...] Other people disagree, but the most convincing comments against my preference come from an optimistic Paul. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Keane</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-68016</link>
		<dc:creator>Peter Keane</dc:creator>
		<pubDate>Sat, 24 Mar 2007 06:11:43 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-68016</guid>
		<description>While we are throwing SQL analogies around, one that I have found quite useful is to think of POST as &#039;get next insert id&#039; (Postgres users may appreciate the need for this -- MySQL users are generally content w/ auto-increment ids and don&#039;t need to think about things like sequence generators).  

To add a new resource, I &#039;POST&#039; to the collection url and get back a unique identifier.  I can use it then and there to &#039;PUT&#039; a resource OR I can forget about it -- the server agrees to never hand out that same ID again -- whether it actually creates the &#039;empty&#039; resource a that ID or not can be an implementation detail (it may be useful to have a return code other than 404 in response to a GET on that id -- something that says &#039;no resource at this ID, but it has already been claimed&#039;).   So implementing POST on the server is pretty simple....

Any thoughts on that?</description>
		<content:encoded><![CDATA[<p>While we are throwing SQL analogies around, one that I have found quite useful is to think of POST as &#8216;get next insert id&#8217; (Postgres users may appreciate the need for this &#8212; MySQL users are generally content w/ auto-increment ids and don&#8217;t need to think about things like sequence generators).  </p>
<p>To add a new resource, I &#8216;POST&#8217; to the collection url and get back a unique identifier.  I can use it then and there to &#8216;PUT&#8217; a resource OR I can forget about it &#8212; the server agrees to never hand out that same ID again &#8212; whether it actually creates the &#8216;empty&#8217; resource a that ID or not can be an implementation detail (it may be useful to have a return code other than 404 in response to a GET on that id &#8212; something that says &#8216;no resource at this ID, but it has already been claimed&#8217;).   So implementing POST on the server is pretty simple&#8230;.</p>
<p>Any thoughts on that?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adam Taft</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-67639</link>
		<dc:creator>Adam Taft</dc:creator>
		<pubDate>Thu, 22 Mar 2007 23:37:51 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-67639</guid>
		<description>&lt;blockquote&gt;
Elias Torres Says:
â€¦ and thereâ€™s always PATCH.
&lt;/blockquote&gt;

No there&#039;s not.  You&#039;re reading a DRAFT of the HTTP/1.1 spec.  The FINAL spec does not include PATCH or many of the other (arguably useful) methods in it (like COPY, MOVE, etc. though these are in Webdav to a certain extent).

http://www.w3.org/Protocols/rfc2616/rfc2616.html</description>
		<content:encoded><![CDATA[<blockquote><p>
Elias Torres Says:<br />
â€¦ and thereâ€™s always PATCH.
</p></blockquote>
<p>No there&#8217;s not.  You&#8217;re reading a DRAFT of the HTTP/1.1 spec.  The FINAL spec does not include PATCH or many of the other (arguably useful) methods in it (like COPY, MOVE, etc. though these are in Webdav to a certain extent).</p>
<p><a href="http://www.w3.org/Protocols/rfc2616/rfc2616.html" rel="nofollow">http://www.w3.org/Protocols/rfc2616/rfc2616.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin Marks</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-66287</link>
		<dc:creator>Kevin Marks</dc:creator>
		<pubDate>Sun, 18 Mar 2007 10:37:44 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-66287</guid>
		<description>&lt;blockquote&gt;The only thing you can do in HTTP is send the entire resource again, to completely replace the existing resource. Thereâ€™s really no equivalent in SQL, but if you must have one, then PUT is like a DELETE, followed by an INSERT, using the same primary key.&lt;/blockquote&gt;
There is an equivalent in MySQL called REPLACE, which does exactly that (and is not recommended because of the index churn it causes).</description>
		<content:encoded><![CDATA[<blockquote><p>The only thing you can do in HTTP is send the entire resource again, to completely replace the existing resource. Thereâ€™s really no equivalent in SQL, but if you must have one, then PUT is like a DELETE, followed by an INSERT, using the same primary key.</p></blockquote>
<p>There is an equivalent in MySQL called REPLACE, which does exactly that (and is not recommended because of the index churn it causes).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-65549</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Fri, 16 Mar 2007 14:07:40 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-65549</guid>
		<description>Yes, HTTP&#039;s PUT is not SQL&#039;s UPDATE.  But, it certainly is CRUD&#039;s UPDATE.  Read it here (pages 54 and 55):  HTTP 1.1: http://www.ietf.org/rfc/rfc2616.txt</description>
		<content:encoded><![CDATA[<p>Yes, HTTP&#8217;s PUT is not SQL&#8217;s UPDATE.  But, it certainly is CRUD&#8217;s UPDATE.  Read it here (pages 54 and 55):  HTTP 1.1: <a href="http://www.ietf.org/rfc/rfc2616.txt" rel="nofollow">http://www.ietf.org/rfc/rfc2616.txt</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tom</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-65244</link>
		<dc:creator>Tom</dc:creator>
		<pubDate>Thu, 15 Mar 2007 09:08:02 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-65244</guid>
		<description>As Hans stated, the biggest point of confusion here is trying to draw a direct correlation between HTTP methods and a RDBMS. It&#039;s naive to always map a single URI to a single entity an a database. You could have a resource in a URI that is made up of several tables in the database, as the concepts in your application may exceed the concepts of your database (think DDD).

Partial updates are also important for high transactional web apps. Often times you only want to update select columns in a table, as some may rarely if ever change, or changing them could cause index updates and other side effects that could be avoided. I&#039;ve worked on enough projects where always trying to update everything can cause contention and other nasties in the database.

HTTP methods should be used in the context of the resources they&#039;re being applied to, as the RFC is not a panacea</description>
		<content:encoded><![CDATA[<p>As Hans stated, the biggest point of confusion here is trying to draw a direct correlation between HTTP methods and a RDBMS. It&#8217;s naive to always map a single URI to a single entity an a database. You could have a resource in a URI that is made up of several tables in the database, as the concepts in your application may exceed the concepts of your database (think DDD).</p>
<p>Partial updates are also important for high transactional web apps. Often times you only want to update select columns in a table, as some may rarely if ever change, or changing them could cause index updates and other side effects that could be avoided. I&#8217;ve worked on enough projects where always trying to update everything can cause contention and other nasties in the database.</p>
<p>HTTP methods should be used in the context of the resources they&#8217;re being applied to, as the RFC is not a panacea</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bert Lamb &#187; links for 2007-03-13</title>
		<link>http://cafe.elharo.com/web/put-is-not-update/comment-page-1/#comment-64678</link>
		<dc:creator>Bert Lamb &#187; links for 2007-03-13</dc:creator>
		<pubDate>Tue, 13 Mar 2007 09:18:44 +0000</pubDate>
		<guid isPermaLink="false">http://cafe.elharo.com/web/put-is-not-update/#comment-64678</guid>
		<description>[...] The Cafes Â» PUT is not UPDATE (tags: rest WebServices) [...]</description>
		<content:encoded><![CDATA[<p>[...] The Cafes Â» PUT is not UPDATE (tags: rest WebServices) [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

