Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.databases.ms-sqlserver    |    Notorious Rube Goldberg contraption    |    19,505 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 18,728 of 19,505    |
|    Bob Barrows to Erland Sommarskog    |
|    Re: Escape Characters in Strings    |
|    23 Aug 12 18:22:06    |
      From: reb01501@NOSPAMyahoo.com              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.              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca