Thanks to a pair of new offerings from Microsoft, not only can applications built with Visual Studio.NET now connect natively to Oracle databases, but Java applications can also access Microsoft SQL Server databases. SearchVB spoke with AMR Research senior analyst Peter Urban about the significance of Microsoft's native application programming interface (API) connector for Oracle databases and its SQL Server 2000 Driver for JDBC (Java Database Connectivity), as well as where Web services fit in.
Urban: Say you're a Visual Studio.NET developer. Microsoft is going to allow you to connect natively to an Oracle database. Before, you had to go through an ODBC (open database connectivity), which is a really slow API, and it took longer to get the data out of the database. The ODBC layer is less efficient than a native connector.
Then the other thing Microsoft did is to open up SQL Server to the Java guys (using the SQL Server 2000 Driver for JDBC). Before Microsoft built these native APIs, you had to go through ODBC to access SQL Server. The different in performance can be significant. Getting the data out can be two times slower with ODBC than with the API.
In the past, it has seemed like connectivity with non-Microsoft technology has not been Microsoft's priority. Why is it changing its strategy now?
Urban: I think the announcement is significant because before Microsoft was basically saying, "You can't connect to an Oracle database? Too bad, move to all Microsoft!" They've sort of had an epiphany and realized that developers have to connect to the non-Microsoft world. Now they are recognizing there are some people out there who develop with non-Microsoft tools. They're realizing they're going to be able to increase their SQL Server sales if these other developers can get at it. So it's not that they're doing this because they're not nice guys; they want to make more money.
You wrote that it is now easier for enterprise customers to consider Microsoft applications and development tools. Why is that?
Urban: Because with all the shops that we've talked to, 90% of them are heterogeneous, meaning they have both Microsoft and Java technology, such as a Microsoft database, and they'll still develop in Java, or an Oracle database and still work with Microsoft technology. Companies don't want to be locked into any technology, so the fact that Microsoft is now allowing you to connect to Oracle, that makes them play better in a heterogeneous environment and that's what enterprise guys are looking for. They're by no means 100% there (regarding interoperability), but they're taking good steps to get there.
What role will Web services play in Microsoft's database connectivity plans?
Urban: Right now, I'd say very few people are using Web services, but they're going to be important a year from now. Basically a Web service allows you to make a database call as a SOAP (Simple Object Access Protocol) message.
Say you're an automaker, like Ford, and you have a Microsoft SQL Server database and all these suppliers. One of them might want to know your inventory of tires, so they know when to send you new tires. So they'll send a SOAP call, which is an XML message, and that goes directly into SQL Server and then a message is sent back with the inventory results. It's a very efficient way to communicate computer to computer. So Web services will make Microsoft products more open because they can communicate more openly. They cross the chasm, and they allow the J2EE guys to talk to the .NET guys.
Now that Microsoft has done this, does Microsoft technology have an advantage over Java when it comes to connecting a database with multiple-vendor systems?
Urban: From strictly a development perspective, I think if you look at development tools, Visual Studio.NET is in the lead. It's the easiest one to use and it's got support for 20 different languages. The weakness is it doesn't support Java. Visual Studio.NET has strong usability support as well, but with regard to heterogeneous capability in general, I'd say Java has the mind share. Looking at someone like BEA, it has an application server that can run on any OS on any platform that you want, but if you use Microsoft you have to run everything on Windows.
What's the bottom line for developers? Should they feel good about Microsoft's efforts, or hold back on giving the new connectivity offerings a try?
Urban: I think it's a pretty good move. It's about time (Microsoft) did this. They're opening up SQL Server, and they're opening up Microsoft to developers, but there's more to be done as far as connecting to other databases like DB2 and Sybase and NCR.
FOR MORE INFORMATION:
CLICK for ourTech Tips on Microsoft SQL Server
CLICK for our Best Web Links on database programming