Path: csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!newsfeed.xs4all.nl!newsfeed3.news.xs4all.nl!xs4all!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.010 X-Spam-Evidence: '*H*': 0.98; '*S*': 0.00; 'wiki': 0.03; 'configure': 0.05; 'mysql,': 0.07; 'postgresql': 0.07; 'utf-8': 0.07; 'arrays': 0.09; 'bindings': 0.09; 'mess': 0.09; 'moreover,': 0.09; 'mysql.': 0.09; 'postgres': 0.09; '\xe2\x80\x94': 0.09; 'cc:addr:python- list': 0.11; 'python': 0.11; '(use': 0.16; 'binding,': 0.16; 'fixes.': 0.16; 'googling': 0.16; 'messy': 0.16; 'nudge': 0.16; 'such,': 0.16; 'subject:python': 0.16; 'wrote:': 0.18; 'differ': 0.19; 'work,': 0.20; 'cc:addr:python.org': 0.22; '(or': 0.24; 'cc:2**0': 0.24; 'cc:no real name:2**0': 0.24; 'least': 0.26; 'gets': 0.27; 'header:In-Reply-To:1': 0.27; 'chris': 0.29; 'am,': 0.29; '(like': 0.30; 'especially': 0.30; 'message- id:@mail.gmail.com': 0.30; 'getting': 0.31; 'towards': 0.31; 'subject:Database': 0.31; 'ago': 0.33; 'sense': 0.34; 'maybe': 0.34; 'could': 0.34; 'problem': 0.35; 'something': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'really': 0.36; 'licensed': 0.36; 'doing': 0.36; 'should': 0.36; 'so,': 0.37; 'others.': 0.38; 'little': 0.38; 'how': 0.40; 'even': 0.60; 'read': 0.60; 'most': 0.60; 'from:charset:utf-8': 0.61; 'such': 0.63; 'field': 0.63; 'more': 0.64; '(that': 0.65; 'skip:\xe2 10': 0.65; 'to:addr:gmail.com': 0.65; 'between': 0.67; 'incorporate': 0.68; 'nobody': 0.68; 'reads': 0.68; 'marketing': 0.70; '8bit%:43': 0.74; 'asshole': 0.84; 'batchelder': 0.84; 'here)': 0.84; 'nice,': 0.84; 'stronger': 0.84; 'subject:via': 0.84; 'url:tk': 0.95; '2013': 0.98 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=q3E7z6nzBFK0NW7ZnfKzCuUQyuorCRo6A53YxLCv3bE=; b=jUQqsDCPqaDIQSkAkWAGixBdow8vQOnVsf/WvV0ocJ4oaMgQxgCQ/gWBTfbMUoFkab 81zu11N4ojkRgCCVxcmjetwmlWg6Y/1PZdggiGRem8+oKkeUVMy16Q35Wj9mZvAaQ881 3/dwmCXq+8qXMjOfM+zqTW+u0c/vQqSe76uOthcr/RYrLQpetHueALK/f1qNF+8Gv9m6 FTEtnCIUyjY98D+sCmGx1sDtGYbuIspxa6XI5cnns3R0VPhHyeV9zehH0VI99zgyxVMe oACTiaQXV5jeY8PF8OJ/wbb5S8lZZTaGzdJ020uLY3HUszqilBWzWxNzhNk3PDiVSLAn rLeg== MIME-Version: 1.0 X-Received: by 10.50.2.67 with SMTP id 3mr12817799igs.41.1381050324217; Sun, 06 Oct 2013 02:05:24 -0700 (PDT) In-Reply-To: References: <5250872B.4070803@nedbatchelder.com> Date: Sun, 6 Oct 2013 11:05:24 +0200 Subject: Re: Database statements via python but database left intact From: =?UTF-8?B?Q2hyaXMg4oCcS3dwb2xza2HigJ0gV2Fycmljaw==?= To: Chris Angelico Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Cc: python-list@python.org 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: 39 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1381050331 news.xs4all.nl 15942 [2001:888:2000:d::a6]:39971 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:56242 On Sun, Oct 6, 2013 at 12:51 AM, Chris Angelico wrote: > On Sun, Oct 6, 2013 at 8:39 AM, Ned Batchelder wr= ote: >> Now is a good time to go read about transactions, and committing, and th= e >> difference between MyISAM and InnoDB. Please don't ask more about it he= re. > > It's because of threads like this that I would really like Python to > nudge people towards something stronger than MySQL. Would it kill > Python to incorporate PostgreSQL bindings automatically? It would require Postgres around people=E2=80=99s (or at least packagers=E2= =80=99) systems, and it often gets messy when we have such requirements. Psycopg2, the most popular binding, is licensed under LGPL3 + Zope (or such, there is a little mess here) which MAY pose a problem (IANAL though). Also, Postgres is much harder to configure than MySQL, especially if you have no experience or an asshole OS. Moreover, the stdlib is where packages come to die. So, instead of this, maybe we should work on getting psycopg2 to the top result on Googling =E2=80=9Cpython sql=E2=80=9D, or even =E2=80=9Cpytho= n mysql=E2=80=9D with an anti-MySQL ad? (like vim was doing some time ago on Googling =E2=80=9Cemacs= =E2=80=9D) We should also educate people on how PostgreSQL works with a nice, human-friendly tutorial. Especially in some non-standard things and things that differ between PostgreSQL and MySQL =E2=80=94 like how to make = an auto-incrementing ID field (use sequences), or how PostgreSQL arrays work, among others. The wiki (that nobody reads anyways) could also use some marketing fixes. --=20 Chris =E2=80=9CKwpolska=E2=80=9D Warrick PGP: 5EAAEA16 stop html mail | always bottom-post | only UTF-8 makes sense