Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.databases.ms-sqlserver > #1234

Re: Escape Characters in Strings

From "Bob Barrows" <reb01501@NOSPAMyahoo.com>
Newsgroups comp.databases.ms-sqlserver
Subject Re: Escape Characters in Strings
Date 2012-08-23 18:22 -0400
Organization A noiseless patient Spider
Message-ID <k16agd$i9h$1@dont-email.me> (permalink)
References (2 earlier) <2s0a38toaa3n1th1e42kmat8n0ei6v9bah@4ax.com> <XnsA0B7D82775B60Yazorman@127.0.0.1> <n5ha38dbi03o3npmc3emukmisrb2qevl53@4ax.com> <k152pv$scc$1@dont-email.me> <XnsA0B8EC523442AYazorman@127.0.0.1>

Show all headers | View raw


Erland Sommarskog wrote:
> Bob Barrows (reb01501@NOSPAMyahoo.com) writes:
>> Very bizarre. Why not use ADO's innate ability to pass parameter
>> values? I see from you're next message that you are using vbscript.
>> So, assuming the procedure above returns no records, and that your
>> opened connection variable is called "cn", the vbscript to execute
>> the above procedure would be:
>>
>> cn.ExampleProc "abc",1,2,3
>>
>> Explanation: ADO (2.5 and higher) allows stored procedures to be
>> treated as if they are methods of the connection object, allowing
>> the parameter values to passed as if you were plassing arguments to
>> a builtin method. No need to worry about escaping delimiters, etc.
>
> Egads! I didn't know of that one. Unfortunately, I don't have an VB
> environment here at home, so I cannot try it.
>
> But how does it work under the covers? I would guess that it runs
> .Refresh under the covers, but I found in the MDAC Books Online that
> it says: "ADO will make a 'best guess' of parameter types.".

I don't believe it runs Refresh, I've never seen any evidence of it when 
using Profiler.
Under the covers, a command object is created (similarly as to when the 
connection's Execute method is called) and parameter objects are appended, 
typed based on that "best guess", which uses the types (or subtypes given 
vbscript's restriction to Variant datatypes) of the passed values in making 
that guess. Yes, theoretically, the best guess could be wrong, but in my 
experience it never has been - at worst, an implicit conversion might be 
required. Of course, my environment has always been very simple. And as long 
as you properly type your VB objects, the chance of a bad guess that 
requires more than a conversion from varchar to nvarchar, or float to 
integer is slim.


Back to comp.databases.ms-sqlserver | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Escape Characters in Strings Gene Wirchenko <genew@ocis.net> - 2012-08-21 15:39 -0700
  Re: Escape Characters in Strings Erland Sommarskog <esquel@sommarskog.se> - 2012-08-22 07:33 +0000
    Re: Escape Characters in Strings Gene Wirchenko <genew@ocis.net> - 2012-08-22 09:10 -0700
      Re: Escape Characters in Strings Erland Sommarskog <esquel@sommarskog.se> - 2012-08-22 21:14 +0200
        Re: Escape Characters in Strings Gene Wirchenko <genew@ocis.net> - 2012-08-22 13:53 -0700
          Re: Escape Characters in Strings Erland Sommarskog <esquel@sommarskog.se> - 2012-08-22 23:35 +0200
            Re: Escape Characters in Strings Gene Wirchenko <genew@ocis.net> - 2012-08-22 17:38 -0700
              Re: Escape Characters in Strings Erland Sommarskog <esquel@sommarskog.se> - 2012-08-23 10:22 +0000
          Re: Escape Characters in Strings "Bob Barrows" <reb01501@NOSPAMyahoo.com> - 2012-08-23 07:05 -0400
            Re: Escape Characters in Strings Erland Sommarskog <esquel@sommarskog.se> - 2012-08-23 23:13 +0200
              Re: Escape Characters in Strings "Bob Barrows" <reb01501@NOSPAMyahoo.com> - 2012-08-23 18:22 -0400
                Re: Escape Characters in Strings Erland Sommarskog <esquel@sommarskog.se> - 2012-08-24 07:40 +0000
                Re: Escape Characters in Strings "Bob Barrows" <reb01501@NOSPAMyahoo.com> - 2012-08-24 06:16 -0400

csiph-web