Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Bye bye SQL Server OLE DB, welcome back ODBC

Bye bye SQL Server OLE DB, welcome back ODBC

Scheduled Pinned Locked Moved The Lounge
databasecomc++sql-serverdesign
25 Posts 16 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • W Offline
    W Offline
    Wendelius
    wrote on last edited by
    #1

    http://blogs.msdn.com/b/sqlnativeclient/archive/2011/08/29/microsoft-is-aligning-with-odbc-for-native-relational-data-access.aspx[^]

    The need to optimize rises from a bad design.My articles[^]

    M M S F B 6 Replies Last reply
    0
    • W Wendelius

      http://blogs.msdn.com/b/sqlnativeclient/archive/2011/08/29/microsoft-is-aligning-with-odbc-for-native-relational-data-access.aspx[^]

      The need to optimize rises from a bad design.My articles[^]

      M Offline
      M Offline
      Mycroft Holmes
      wrote on last edited by
      #2

      What! WHAT! are you nuts... oh the only api supported on all platforms, thats allright I don't build for ALL platforms so you can take ODBC and shove it back into the 90s where it belongs.

      Never underestimate the power of human stupidity RAH

      W P J J 4 Replies Last reply
      0
      • M Mycroft Holmes

        What! WHAT! are you nuts... oh the only api supported on all platforms, thats allright I don't build for ALL platforms so you can take ODBC and shove it back into the 90s where it belongs.

        Never underestimate the power of human stupidity RAH

        W Offline
        W Offline
        Wendelius
        wrote on last edited by
        #3

        Yep, that was my reaction also :)

        The need to optimize rises from a bad design.My articles[^]

        1 Reply Last reply
        0
        • M Mycroft Holmes

          What! WHAT! are you nuts... oh the only api supported on all platforms, thats allright I don't build for ALL platforms so you can take ODBC and shove it back into the 90s where it belongs.

          Never underestimate the power of human stupidity RAH

          P Offline
          P Offline
          peterchen
          wrote on last edited by
          #4

          As a vertan I can assure you that OLE DB sucks. It is not an "ready to use" API. It attempts to be an abstraction layer for different API's to build a usable API on top, but with all the "may or may not be implemented by the provider" it's no better than an exercise in Joel's Leaky Abstractions[^] concept. The only advantage is that when moving to another database, you are programming against the same API - but your client code will still subtly differ. The general architecture isn't half bad and would probably even be able to carry its promise of covering "everything databasey". But with the very verbose code and the weird mix of raw pointer manipulation, COM and C-style resource management, provider implementations do what's necessary to work, no more. Still, I'm surprised that we are back at ODBC.

          FILETIME to time_t
          | FoldWithUs! | sighist | WhoIncludes - Analyzing C++ include file hierarchy

          J 1 Reply Last reply
          0
          • W Wendelius

            http://blogs.msdn.com/b/sqlnativeclient/archive/2011/08/29/microsoft-is-aligning-with-odbc-for-native-relational-data-access.aspx[^]

            The need to optimize rises from a bad design.My articles[^]

            M Offline
            M Offline
            Michael Bergman
            wrote on last edited by
            #5

            This is precisely why I don't take Microsoft seriously when they come out with a new framework, API or interface library which is suppose to make my life easier. It never does, and then I have to go in and fix others' code who got caught up in the hype.

            m.bergman

            For Bruce Schneier, quanta only have one state : afraid.

            To succeed in the world it is not enough to be stupid, you must also be well-mannered. -- Voltaire

            Honesty is the best policy, but insanity is a better defense. -- Steve Landesberg

            L 1 Reply Last reply
            0
            • M Michael Bergman

              This is precisely why I don't take Microsoft seriously when they come out with a new framework, API or interface library which is suppose to make my life easier. It never does, and then I have to go in and fix others' code who got caught up in the hype.

              m.bergman

              For Bruce Schneier, quanta only have one state : afraid.

              To succeed in the world it is not enough to be stupid, you must also be well-mannered. -- Voltaire

              Honesty is the best policy, but insanity is a better defense. -- Steve Landesberg

              L Offline
              L Offline
              LloydA111
              wrote on last edited by
              #6

              Michael Bergman wrote:

              when they come out with a new framework, API or interface library

              I agree, I dislike the .NET framework also. Sure, it wouldn't be as bad if it was literally just a collection of libraries, but why do they need to go to the extent of making all .NET programs run in a VM? Just seems like they want everything to run slow.


              See if you can crack this: b749f6c269a746243debc6488046e33f
              So far, no one seems to have cracked this!

              The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."

              G 1 Reply Last reply
              0
              • L LloydA111

                Michael Bergman wrote:

                when they come out with a new framework, API or interface library

                I agree, I dislike the .NET framework also. Sure, it wouldn't be as bad if it was literally just a collection of libraries, but why do they need to go to the extent of making all .NET programs run in a VM? Just seems like they want everything to run slow.


                See if you can crack this: b749f6c269a746243debc6488046e33f
                So far, no one seems to have cracked this!

                The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."

                G Offline
                G Offline
                Gary Wheeler
                wrote on last edited by
                #7

                Lloyd Atkinson wrote:

                why do they need to go to the extent of making all .NET programs run in a VM? Just seems like they want everything to run slow

                That's the classic complaint from native-mode developers who've never done any .NET programming. I ought to know; I was one of them. .NET applications can be as fast (or faster) than native applications, depending on the circumstances. I've found that the 'speed' of an application depends far more on the programmer's competence than it does the underlying environment.

                Software Zen: delete this;

                P L 2 Replies Last reply
                0
                • G Gary Wheeler

                  Lloyd Atkinson wrote:

                  why do they need to go to the extent of making all .NET programs run in a VM? Just seems like they want everything to run slow

                  That's the classic complaint from native-mode developers who've never done any .NET programming. I ought to know; I was one of them. .NET applications can be as fast (or faster) than native applications, depending on the circumstances. I've found that the 'speed' of an application depends far more on the programmer's competence than it does the underlying environment.

                  Software Zen: delete this;

                  P Offline
                  P Offline
                  pmorelfourrier
                  wrote on last edited by
                  #8

                  Gary Wheeler wrote:

                  NET applications can be as fast (or faster) than native applications, depending on the circumstances.
                   
                  I've found that the 'speed' of an application depends far more on the programmer's competence than it does the underlying environment.

                  No. .Net code running in a VM *cannot* be as fast as native code. This is just impossible. But *your* native code can be slower than *your* .Net code if you're a bad developper. Microsoft knows that .Net is too slow and bloated: WPF, Silverlight are dying. In Windows 8, .Net Framework has been replaced by WinRT. What is funny about WinRT is that it is based on COM. COM is another 90s technology...

                  P J D 3 Replies Last reply
                  0
                  • W Wendelius

                    http://blogs.msdn.com/b/sqlnativeclient/archive/2011/08/29/microsoft-is-aligning-with-odbc-for-native-relational-data-access.aspx[^]

                    The need to optimize rises from a bad design.My articles[^]

                    S Offline
                    S Offline
                    Snorri Kristjansson
                    wrote on last edited by
                    #9

                    I'm currently working on migrating data from (Unix) Informix SQL server to MS SQL an guess what - ODBC rules. I'm using a wonderful tool: WinSQL to tinker with the Informix SQL server using ODBC. It's not as bad as one would think. All the crap software that IBM offers for the Informix server simply did not work - so I had no choice but to use ODBC. It gets the job done - and that all I need right now.

                    W 1 Reply Last reply
                    0
                    • S Snorri Kristjansson

                      I'm currently working on migrating data from (Unix) Informix SQL server to MS SQL an guess what - ODBC rules. I'm using a wonderful tool: WinSQL to tinker with the Informix SQL server using ODBC. It's not as bad as one would think. All the crap software that IBM offers for the Informix server simply did not work - so I had no choice but to use ODBC. It gets the job done - and that all I need right now.

                      W Offline
                      W Offline
                      Wendelius
                      wrote on last edited by
                      #10

                      When doing cross platform operations, ODBC is just fine. However I'm a bit dissapointed on MS since OLEDB was supposed to 'replace' ODBC and lots of people have invested/written software for OLEDB. Now this is going to be taken away...

                      The need to optimize rises from a bad design.My articles[^]

                      1 Reply Last reply
                      0
                      • W Wendelius

                        http://blogs.msdn.com/b/sqlnativeclient/archive/2011/08/29/microsoft-is-aligning-with-odbc-for-native-relational-data-access.aspx[^]

                        The need to optimize rises from a bad design.My articles[^]

                        F Offline
                        F Offline
                        Fernando A Gomez F
                        wrote on last edited by
                        #11

                        I'm writting this C++ application that will synchronize some data between SQL Server and SharePoint, and -oh the irony- it was going to be my first app using OLE DB... oh well, back to good ol' CRecordset I guess...

                        W S 2 Replies Last reply
                        0
                        • F Fernando A Gomez F

                          I'm writting this C++ application that will synchronize some data between SQL Server and SharePoint, and -oh the irony- it was going to be my first app using OLE DB... oh well, back to good ol' CRecordset I guess...

                          W Offline
                          W Offline
                          Wendelius
                          wrote on last edited by
                          #12

                          Hopefuly the old classes will be polished and some new mechanisms implemented :)

                          The need to optimize rises from a bad design.My articles[^]

                          1 Reply Last reply
                          0
                          • P pmorelfourrier

                            Gary Wheeler wrote:

                            NET applications can be as fast (or faster) than native applications, depending on the circumstances.
                             
                            I've found that the 'speed' of an application depends far more on the programmer's competence than it does the underlying environment.

                            No. .Net code running in a VM *cannot* be as fast as native code. This is just impossible. But *your* native code can be slower than *your* .Net code if you're a bad developper. Microsoft knows that .Net is too slow and bloated: WPF, Silverlight are dying. In Windows 8, .Net Framework has been replaced by WinRT. What is funny about WinRT is that it is based on COM. COM is another 90s technology...

                            P Offline
                            P Offline
                            Paulo_JCG
                            wrote on last edited by
                            #13

                            pmorelfourrier wrote:

                            No. .Net code running in a VM *cannot* be as fast as native code. This is just impossible.
                            But *your* native code can be slower than *your* .Net code if you're a bad developper.

                            A good developer is the one who delivers good software on time. Not the one who delivers excelent software too late... (someone said it) Yes, it's true .NET isn't as fast as Native, but it has a lot of work done in optimized classes that you would have a lot of work implementing in Native code.

                            pmorelfourrier wrote:

                            What is funny about WinRT is that it is based on COM.
                            COM is another 90s technology...

                            X|

                            Paulo Gomes Over and Out :D

                            1 Reply Last reply
                            0
                            • F Fernando A Gomez F

                              I'm writting this C++ application that will synchronize some data between SQL Server and SharePoint, and -oh the irony- it was going to be my first app using OLE DB... oh well, back to good ol' CRecordset I guess...

                              S Offline
                              S Offline
                              Snorri Kristjansson
                              wrote on last edited by
                              #14

                              How are you communicating with the SharePoint server from C++? Just curious... I might like to do that in the future.

                              F 1 Reply Last reply
                              0
                              • G Gary Wheeler

                                Lloyd Atkinson wrote:

                                why do they need to go to the extent of making all .NET programs run in a VM? Just seems like they want everything to run slow

                                That's the classic complaint from native-mode developers who've never done any .NET programming. I ought to know; I was one of them. .NET applications can be as fast (or faster) than native applications, depending on the circumstances. I've found that the 'speed' of an application depends far more on the programmer's competence than it does the underlying environment.

                                Software Zen: delete this;

                                L Offline
                                L Offline
                                LloydA111
                                wrote on last edited by
                                #15

                                I have done a bit of .Net programming, but I write code for other systems/operating systems, and I often have to count cycles, particulary for embedded systems I work on, so this is probably why I have that view of .Net :P


                                See if you can crack this: b749f6c269a746243debc6488046e33f
                                So far, no one seems to have cracked this!

                                The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."

                                G 1 Reply Last reply
                                0
                                • M Mycroft Holmes

                                  What! WHAT! are you nuts... oh the only api supported on all platforms, thats allright I don't build for ALL platforms so you can take ODBC and shove it back into the 90s where it belongs.

                                  Never underestimate the power of human stupidity RAH

                                  J Offline
                                  J Offline
                                  JackDingler
                                  wrote on last edited by
                                  #16

                                  COM is so 1990s....

                                  1 Reply Last reply
                                  0
                                  • L LloydA111

                                    I have done a bit of .Net programming, but I write code for other systems/operating systems, and I often have to count cycles, particulary for embedded systems I work on, so this is probably why I have that view of .Net :P


                                    See if you can crack this: b749f6c269a746243debc6488046e33f
                                    So far, no one seems to have cracked this!

                                    The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."

                                    G Offline
                                    G Offline
                                    Gary Wheeler
                                    wrote on last edited by
                                    #17

                                    Lloyd Atkinson wrote:

                                    particulary for embedded systems I work on

                                    Yup, no surprise there. I've done my share of PIC programming (not to mention old-school 8-bit stuff like 8085's and Z-80's, once upon a time). I was simply arguing against the generalization, which I had expressed myself at one time.

                                    Software Zen: delete this;

                                    1 Reply Last reply
                                    0
                                    • W Wendelius

                                      http://blogs.msdn.com/b/sqlnativeclient/archive/2011/08/29/microsoft-is-aligning-with-odbc-for-native-relational-data-access.aspx[^]

                                      The need to optimize rises from a bad design.My articles[^]

                                      B Offline
                                      B Offline
                                      BrainiacV
                                      wrote on last edited by
                                      #18

                                      Now I don't feel so bad about being behind the times.

                                      Psychosis at 10 Film at 11 Those who do not remember the past, are doomed to repeat it. Those who do not remember the past, cannot build upon it.

                                      1 Reply Last reply
                                      0
                                      • S Snorri Kristjansson

                                        How are you communicating with the SharePoint server from C++? Just curious... I might like to do that in the future.

                                        F Offline
                                        F Offline
                                        Fernando A Gomez F
                                        wrote on last edited by
                                        #19

                                        By using SP2010 REST APIs and SP2010 web services (those located at /_vti_bin/ directory), a little help from the WWS API and good ol' MSXML... BTW, one of our research projects -that I'll be leading next March- will consume SP information from an iOS device... we'll be using the same approach, only without WWS and MSXML... let's see how it turns out... Cheers!

                                        1 Reply Last reply
                                        0
                                        • P peterchen

                                          As a vertan I can assure you that OLE DB sucks. It is not an "ready to use" API. It attempts to be an abstraction layer for different API's to build a usable API on top, but with all the "may or may not be implemented by the provider" it's no better than an exercise in Joel's Leaky Abstractions[^] concept. The only advantage is that when moving to another database, you are programming against the same API - but your client code will still subtly differ. The general architecture isn't half bad and would probably even be able to carry its promise of covering "everything databasey". But with the very verbose code and the weird mix of raw pointer manipulation, COM and C-style resource management, provider implementations do what's necessary to work, no more. Still, I'm surprised that we are back at ODBC.

                                          FILETIME to time_t
                                          | FoldWithUs! | sighist | WhoIncludes - Analyzing C++ include file hierarchy

                                          J Offline
                                          J Offline
                                          jschell
                                          wrote on last edited by
                                          #20

                                          peterchen wrote:

                                          The only advantage is that when moving to another database, you are programming against the same API - but your client code will still subtly differ.

                                          Attempting to generalize complex APIs to target replaceable plugins is difficult at best. And in terms of databases I doubt it is possible to build a generalized API that doesn't require tweaking for different databases. Java Hibernate makes a pretty good try but that is based on creating an abstraction layer even for SQL itself, and even then there will likely be differences for larger systems. Not to mention that database moves are extremely rare in programming. Businesses either stick with one or target many. For the former if a database migration is required then it is an enterprise level risk that requires large scale testing regardless. For the latter if a businesses that test many from the start will quickly understand the differences. Businesses that don't will see their failure in time.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups