Path: csiph.com!usenet.pasdenom.info!gegeweb.org!de-l.enfer-du-nord.net!feeder1.enfer-du-nord.net!newsfeed.eweka.nl!eweka.nl!feeder3.eweka.nl!news.astraweb.com!border2.a.newsrouter.astraweb.com!multikabel.net!newsfeed10.multikabel.net!xlned.com!feeder1.xlned.com!news2.euro.net!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.086 X-Spam-Evidence: '*H*': 0.84; '*S*': 0.01; 'repository': 0.05; 'welcome.': 0.07; 'etc).': 0.09; 'orm': 0.09; 'file,': 0.15; 'subject:ORM': 0.16; 'to:name:python-list@python.org': 0.20; 'thanks.': 0.21; 'url:02': 0.22; 'question': 0.27; 'thoughts': 0.27; 'project:': 0.29; 'source': 0.29; 'comments': 0.33; 'from:addr:live.com': 0.33; 'to:addr:python-list': 0.33; 'next': 0.35; 'why': 0.37; 'data': 0.37; 'some': 0.38; 'to:addr:python.org': 0.39; 'your': 0.60; 'valuable': 0.60; 'between': 0.63; 'url:blogspot': 0.64; 'here': 0.65; 'due': 0.66; 'subject:SQL': 0.84; 'url:2013': 0.84; 'charset:windows-1251': 0.97 X-EIP: [8MasfZQB89h/ceWaC7eB2dxxyA8YLZs5] X-Originating-Email: [andriy.kornatskyy@live.com] From: Andriy Kornatskyy To: "python-list@python.org" Subject: Thoughts on SQL vs ORM Date: Wed, 6 Feb 2013 15:58:19 +0300 Importance: Normal Content-Type: text/plain; charset="windows-1251" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginalArrivalTime: 06 Feb 2013 12:58:19.0513 (UTC) FILETIME=[A31F2E90:01CE0469] X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 16 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1360155567 news.xs4all.nl 6927 [2001:888:2000:d::a6]:39742 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:38272 The question of persistence implementation arise often. I found repository = pattern very valuable due to separation of concerns=2C mediate between doma= in model and data source (mock=2C file=2C database=2C web service=2C etc). The database data source is somewhat specific since you can proceed with SQ= L functions or ORM. Here are some thoughts why you might prefer SQL functio= ns over ORM in your next project: http://mindref.blogspot.com/2013/02/sql-vs-orm.html Comments or suggestions are welcome. Thanks. Andriy Kornatskyy =