Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:99112 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 60881 invoked from network); 18 May 2017 12:59:12 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 18 May 2017 12:59:12 -0000 Authentication-Results: pb1.pair.com header.from=adambaratz@php.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=adam.baratz@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.216.173 as permitted sender) X-PHP-List-Original-Sender: adam.baratz@gmail.com X-Host-Fingerprint: 209.85.216.173 mail-qt0-f173.google.com Received: from [209.85.216.173] ([209.85.216.173:32957] helo=mail-qt0-f173.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 8C/D4-23431-E9A9D195 for ; Thu, 18 May 2017 08:59:12 -0400 Received: by mail-qt0-f173.google.com with SMTP id t26so33065264qtg.0 for ; Thu, 18 May 2017 05:59:10 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=sRYI6RaJaHnnRVvzA2BlrLDZOPSNAioosBRWisqfIHA=; b=al4HAqjLDSafPJ+LUwKWcpSsf7XyVitTvQOfwxb5ovz278IieD4blFXImXUHzC5Gm5 Jm/w4E3k0EBtLCiGbqbtJkSvrAClcmDNIiRDORoIvCXiusvAxOhLkHR0XMRg/lK8XLpx d/P6WL3+MTon8dRq4+06B75nS0WAEGvHabkvRxKsUfgai9IeG1Kwtxw/7yaa12kTczJb cfFn+vO2yGxWYyEYoSmaVhuh2ei0Y//x2hDuYDfwGo1gGVDUi/KjsROT9elmzeh3e9/j BK3gv3nYXAI46hGwwVmmFuuPvzAxS8A3FVb5/29rD9ZnwkFG+IIvhWjhtMi5t1bSE07A Qr6g== X-Gm-Message-State: AODbwcCdRXUAsn5YlCGXslSAv0PniZcTBMncmQ07C+/ft4WW2OJ/if7a N0254wVfMoA2LxJYLTE= X-Received: by 10.200.9.53 with SMTP id t50mr3475090qth.99.1495112347687; Thu, 18 May 2017 05:59:07 -0700 (PDT) Received: from mail-qk0-f179.google.com (mail-qk0-f179.google.com. [209.85.220.179]) by smtp.gmail.com with ESMTPSA id 88sm3653025qkx.68.2017.05.18.05.59.07 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 18 May 2017 05:59:07 -0700 (PDT) Received: by mail-qk0-f179.google.com with SMTP id u75so34661898qka.3 for ; Thu, 18 May 2017 05:59:07 -0700 (PDT) X-Received: by 10.233.220.71 with SMTP id q68mr3369745qkf.199.1495112346956; Thu, 18 May 2017 05:59:06 -0700 (PDT) MIME-Version: 1.0 Received: by 10.12.152.27 with HTTP; Thu, 18 May 2017 05:59:06 -0700 (PDT) In-Reply-To: References: Date: Thu, 18 May 2017 14:59:06 +0200 X-Gmail-Original-Message-ID: Message-ID: To: Matteo Beccati Cc: "internals@lists.php.net" Content-Type: multipart/alternative; boundary="94eb2c0438e056f8c4054fcbf8da" Subject: Re: [PHP-DEV] Re: [VOTE] PDO Float Type From: adambaratz@php.net (Adam Baratz) --94eb2c0438e056f8c4054fcbf8da Content-Type: text/plain; charset="UTF-8" > > If you search the archives, you might find that I wasn't happy to have > PARAM_FLOAT without some kind of PARAM_NUMERIC. You're basically saying > that my point was irrelevant and out of scope. Aww, thanks ;) > I'm sorry my update sounded like I was ignoring your feedback. Another change was meant to address your concerns about people misusing PARAM_FLOAT. Most drivers won't force casts on these values, so if you pass a string with this type it will work the same as if you used PARAM_STR. Isn't that the foot-gun you've highlighted? Maybe we should approach this another way: is there anything that could be changed with the RFC to change your mind about it? If not, this conversation is a waste of time for both of us. > For example, I'm looking into an approach that would bring real prepared > > statements to pdo_dblib: > > https://bugs.php.net/bug.php?id=74592 > > No offence, but those look like pretty ugly hacks and poor attempts to > overcome what's a huge limitation of the underlying library. > Microsoft actually recommended this solution to my team. We've done only informal testing, but initial results have been positive. I understand the power of legacy, since I'm running one very legacy > project myself, but please do yourself a favour and help out the > transition away from something as poor as dblib rather than trying to > build your own custom prepared statement emulator. Maybe your skills and > enthusiasm could be helpful to the pdo_sqlsrv team and the driver could > become core at some point? > I'm doing this to help my team transition off pdo_dblib. Parameters tagged with the wrong types are going to make it hard for us to migrate code. I'm considering #74592 as a general improvement, separately, in my capacity as pdo_dblib's maintainer, since it's not practical for everyone to move off it. Since your driver uses emulated prepares, I'd expect you having a new > execution plan regardless. At least for current master, which is the RFC > target. I meant if the driver is ever changed to one that uses real prepared statements. Thanks, Adam --94eb2c0438e056f8c4054fcbf8da--