http://www.openlinksw.com:443/weblog/uda/135/
Universal Data Access Technology Blog
UDA Data Space Bot
hwilliams@openlinksw.com
2024-03-29T10:01:01Z
Virtuoso Universal Server 08.03.3327
http://www.openlinksw.com:443/weblog/public/images/vbloglogo.gif
Announcement: UDA Release 7.0 Lite Edition ODBC Driver for Oracle
http://www.openlinksw.com:443/weblog/uda/135/?id=1852
2015-06-23T20:14:43Z
<p>Today, we've updated the <b><a href="http://uda.openlinksw.com/odbc-oracle-st/" id="link-id0x2aac17a529d8">Lite Edition ODBC Driver for Oracle</a></b>.</p> <p>Installation and configuration takes only minutes, by following the documentation which remains available anytime, specifically for this driver on <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/UdaWikiWeb/PreinstallOracleLiteWin32" id="link-id0x2aac17a1eaf8">Windows</a>. </p> <p>Release 7.0 licenses are also <a href="http://uda.openlinksw.com/offers/offers.vsp?data_access=http%3A%2F%2Fwww.openlinksw.com%2Fontology%2Fsoftware%23DataAccessODBC&dbms=http%3A%2F%2Fwww.openlinksw.com%2Fontology%2Fsoftware%23Oracle&format=http%3A%2F%2Fdata.openlinksw.com%2Foplweb%2Fproduct_format%2Fst%23this&version=7.x" id="link-id0x2aac17c00a78">available for immediate purchase</a>.</p> <h2>Client Platform Support</h2> <p>Release 7.0 installers are <a href="http://uda.openlinksw.com/odbc-oracle-st/" id="link-id0x2aac171b9928">available for immediate download</a> for Windows. Builds for Mac, Linux, and other Unix-like OS will be available soon; please <a href="http://www.openlinksw.com/contact/" id="link-id0x2aabdbc32078">contact us if you have urgent need</a>.</p> <p>Release 7.0 supports all 32-bit and 64-bit ODBC client tools and applications, both GUI and command-line, on —</p> <table style="align:center;width:45%;"> <tr> <th style="width:45%;vertical-align:top;">Windows and Windows Server <br /> on x86 and x86_64</th> </tr> <tr> <td style="width:45%;vertical-align:top;"> <ul> <li> <p>Windows 8.x (x86, x86_64)</p> </li> <li> <p>Windows 7.x (x86, x86_64)</p> </li> <li> <p>Windows Vista (x86, x86_64)</p> </li> <li> <p>Windows XP (x86, x86_64)</p> </li> <li> <p>Windows Server 2012 R2 (x86_64)</p> </li> <li> <p>Windows Server 2012 (x86_64)</p> </li> <li> <p>Windows Server 2008 R2 (x86_64)</p> </li> <li> <p>Windows Server 2008 (x86, x86_64)</p> </li> <li> <p>Windows Server 2003 R2 (x86, x86_64)</p> </li> <li> <p>Windows Server 2003 (x86, x86_64)</p> </li> </ul> </td> </tr> </table> <h2>DBMS Version Support</h2> <p>The Release 7.0 Lite Edition ODBC Driver supports virtually every version of Oracle in current use, including —</p> <table style="align:center;width:95%;"> <tr> <td style="width:30%;vertical-align:top;"> <ul> <li> <p>Oracle 12c Release 1 (12.1.x)</p> </li> <li> <p>Oracle 11g Release 2 (11.2.x)</p> </li> <li> <p>Oracle 11g Release 1 (11.1.x)</p> </li> <li> <p>Oracle 10g Release 2 (10.2.x)</p> </li> <li> <p>Oracle 10g Release 1 (10.1.x)</p> </li> <li> <p>Oracle 9i Release 2 (9.2.x)</p> </li> </ul> </td> </tr> </table> <h2> Changes since Release 6.x </h2> <h3>Additions</h3> <ul> <li> <p>Support for Oracle 12c</p> </li> <li>Support for Windows 8 and Windows Server 2012 <p></p> </li> </ul> <h3>Fixes</h3> <ul> <li> <p>Enhanced support for Oracle 11g</p> </li> </ul>
UDA Data Space Bot
hwilliams@openlinksw.com
2015-06-23T16:56:02.257317-04:00
Announcement: UDA Release 7.0 Express Edition ODBC Driver for Oracle
http://www.openlinksw.com:443/weblog/uda/135/?id=1851
2015-06-23T20:14:36Z
<p>Today, we've updated the <b><a href="http://uda.openlinksw.com/odbc-oracle-ee/" id="link-id0x2aac15bc16d8">Express Edition ODBC Driver for Oracle</a></b>.</p> <p>Installation and configuration takes only minutes, by following the documentation which remains available anytime, specifically for this driver on <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/UdaWikiWeb/PreInstallOracleExpressOSX" id="link-id0x2aac17257ea8">OS X</a> and <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/UdaWikiWeb/PreInstallOracleExpressWin32" id="link-id0x2aac1432de48">Windows</a>. </p> <p>Release 7.0 licenses are also <a href="http://uda.openlinksw.com/offers/offers.vsp?data_access=http%3A%2F%2Fwww.openlinksw.com%2Fontology%2Fsoftware%23DataAccessODBC&dbms=http%3A%2F%2Fwww.openlinksw.com%2Fontology%2Fsoftware%23Oracle&format=http%3A%2F%2Fdata.openlinksw.com%2Foplweb%2Fproduct_format%2Fexpress%23this&version=7.x" id="link-id0x2aac15531168">available for immediate purchase</a>.</p> <h2>Client Platform Support</h2> <p>Release 7.0 installers are <a href="http://uda.openlinksw.com/odbc-oracle-ee/" id="link-id0x2aac16f812e8">available for immediate download</a> for Mac and Windows. (Express Edition is not typically produced for Linux and other Unix-like OS will be available soon; please <a href="http://www.openlinksw.com/contact/" id="link-id0x2aabdbc32078">contact us if you have specific need</a>.)</p> <p>Release 7.0 supports all 32-bit and 64-bit ODBC client tools and applications, both GUI and command-line, on —</p> <table style="align:center;width:95%;"> <tr> <th style="width:45%;vertical-align:top;">OS X and OS X Server <br /> on x86 and x86_64</th> <th style="width:45%;vertical-align:top;">Windows and Windows Server <br /> on x86 and x86_64</th> </tr> <tr> <td style="width:45%;vertical-align:top;"> <ul> <li> <p> Yosemite (10.10.x) (x86_64)</p> </li> <li> <p>Mavericks (10.9.x) (x86_64)</p> </li> <li> <p>Mountain Lion (10.8.x) (x86_64)</p> </li> <li> <p>Lion (10.7.x) (x86_64)</p> </li> </ul> </td> <td style="width:45%;vertical-align:top;"> <ul> <li> <p>Windows 8.x (x86, x86_64)</p> </li> <li> <p>Windows 7.x (x86, x86_64)</p> </li> <li> <p>Windows Vista (x86, x86_64)</p> </li> <li> <p>Windows XP (x86, x86_64)</p> </li> <li> <p>Windows Server 2012 R2 (x86_64)</p> </li> <li> <p>Windows Server 2012 (x86_64)</p> </li> <li> <p>Windows Server 2008 R2 (x86_64)</p> </li> <li> <p>Windows Server 2008 (x86, x86_64)</p> </li> <li> <p>Windows Server 2003 R2 (x86, x86_64)</p> </li> <li> <p>Windows Server 2003 (x86, x86_64)</p> </li> </ul> </td> </tr> </table> <h2>DBMS Version Support</h2> <p>The Release 7.0 Express Edition ODBC Driver supports virtually every version of Oracle in current use, including —</p> <table style="align:center;width:95%;"> <tr> <td style="width:30%;vertical-align:top;"> <ul> <li> <p>Oracle 12c Release 1 (12.1.x)</p> </li> <li> <p>Oracle 11g Release 2 (11.2.x)</p> </li> <li> <p>Oracle 11g Release 1 (11.1.x)</p> </li> <li> <p>Oracle 10g Release 2 (10.2.x)</p> </li> <li> <p>Oracle 10g Release 1 (10.1.x)</p> </li> <li> <p>Oracle 9i Release 2 (9.2.x)</p> </li> </ul> </td> </tr> </table> <h2> Changes since Release 6.x </h2> <h3>Additions</h3> <ul> <li> <p>Support for Oracle 12c</p> </li> <li>Support for OS X Yosemite, Windows 8, and Windows Server 2012 <p></p> </li> </ul> <h3>Fixes</h3> <ul> <li> <p>Enhanced support for Oracle 11g</p> </li> <li>Enhanced support for OS X Mavericks <p></p> </li> </ul>
UDA Data Space Bot
hwilliams@openlinksw.com
2015-06-26T10:41:25.982191-04:00
Announcement: UDA Release 7.0 Lite Edition ODBC Driver for Sybase and Microsoft SQL Server
http://www.openlinksw.com:443/weblog/uda/135/?id=1848
2015-06-16T21:43:12Z
<p>In coming months, we'll be gradually shipping Release 7.0 of all our UDA drivers. This post will be the first of many, describing some of the fixes, changes, and improvements in each driver as they are made available.</p> <p>Today, we have the <b><a href="http://uda.openlinksw.com/odbc-sqlserver-st/" id="link-id0x2aabdba80608">Lite Edition ODBC Drivers for Sybase and Microsoft SQL Server</a></b>.</p> <p>Installation and configuration takes only minutes, by following the documentation which remains available anytime, specifically for this driver on <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/UdaWikiWeb/PreinstallSQLLiteOSX" id="link-id0x2aabdbc32318">OS X</a> and <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/UdaWikiWeb/PreinstallSQLLiteWin32" id="link-id0x2aabdbc32498">Windows</a>. </p> <p>Release 7.0 licenses are also <a href="http://uda.openlinksw.com/offers/offers.vsp?data_access=http%3A%2F%2Fwww.openlinksw.com%2Fontology%2Fsoftware%23DataAccessODBC&dbms=http%3A%2F%2Fwww.openlinksw.com%2Fontology%2Fsoftware%23SQLServer&format=http%3A%2F%2Fdata.openlinksw.com%2Foplweb%2Fproduct_format%2Fst%23this&version=7.x" id="link-id0x2aabdbc32738">available for immediate purchase</a>.</p> <h2>Client Platform Support</h2> <p>Release 7.0 installers are <a href="http://uda.openlinksw.com/odbc-sqlserver-st/" id="link-id0x2aabdba80798">available for immediate download</a> for Mac and Windows. Builds for Linux and other Unix-like OS will be available soon; please <a href="http://www.openlinksw.com/contact/" id="link-id0x2aabdbc32078">contact us if you have urgent need</a>.</p> <p>Release 7.0 supports all 32-bit and 64-bit ODBC client tools and applications, both GUI and command-line, on —</p> <table style="align:center;width:95%;"> <tr> <th style="width:45%;vertical-align:top;">OS X and OS X Server <br /> on x86 and x86_64</th> <th style="width:45%;vertical-align:top;">Windows and Windows Server <br /> on x86 and x86_64</th> </tr> <tr> <td style="width:45%;vertical-align:top;"> <ul> <li> <p> Yosemite (10.10.x) (x86_64)</p> </li> <li> <p>Mavericks (10.9.x) (x86_64)</p> </li> <li> <p>Mountain Lion (10.8.x) (x86_64)</p> </li> <li> <p>Lion (10.7.x) (x86_64)</p> </li> </ul> </td> <td style="width:45%;vertical-align:top;"> <ul> <li> <p>Windows 8.x (x86, x86_64)</p> </li> <li> <p>Windows 7.x (x86, x86_64)</p> </li> <li> <p>Windows Vista (x86, x86_64)</p> </li> <li> <p>Windows XP (x86, x86_64)</p> </li> <li> <p>Windows Server 2012 R2 (x86_64)</p> </li> <li> <p>Windows Server 2012 (x86_64)</p> </li> <li> <p>Windows Server 2008 R2 (x86_64)</p> </li> <li> <p>Windows Server 2008 (x86, x86_64)</p> </li> <li> <p>Windows Server 2003 R2 (x86, x86_64)</p> </li> <li> <p>Windows Server 2003 (x86, x86_64)</p> </li> </ul> </td> </tr> </table> <h2>DBMS Version Support</h2> <p>The Release 7.0 Lite Edition ODBC Driver supports virtually every version of Microsoft SQL Server and Sybase Adaptive Server in current use, including —</p> <table style="align:center;width:95%;"> <tr> <td style="width:30%;vertical-align:top;"> <ul> <li> <p>Microsoft SQL Server 6.5</p> </li> <li> <p>Microsoft SQL Server 7.0</p> </li> <li> <p>Microsoft SQL Server 2000</p> </li> <li> <p>Microsoft SQL Server 2005</p> </li> <li> <p>Microsoft SQL Server 2008</p> </li> <li> <p>Microsoft SQL Server 2012</p> </li> <li> <p>Microsoft SQL Server 2014 </p> </li> <li> <p>Microsoft SQL Azure</p> </li> </ul> </td> <td style="width:30%;vertical-align:top;"> <ul> <li> <p>Sybase SQL Server 4.x</p> </li> <li> <p>Sybase SQL Server 10.x</p> </li> <li> <p>Sybase SQL Server 11.x</p> </li> <li> <p>Sybase Adaptive Server Enterprise (ASE) 11.x</p> </li> <li> <p>Sybase Adaptive Server Enterprise (ASE) 12.x</p> </li> <li> <p>Sybase Adaptive Server Enterprise (ASE) 15.x</p> </li> </ul> </td> <td style="width:30%;vertical-align:top;"> <ul> <li> <p>Sybase SQL Anywhere 6.x</p> </li> <li> <p>Sybase Adaptive Server Anywhere (ASA) 7.x</p> </li> <li> <p>Sybase Adaptive Server Anywhere (ASA) 8.x</p> </li> <li> <p>Sybase Adaptive Server Anywhere (ASA) 9.x</p> </li> <li> <p>Sybase SQL Anywhere 10.x</p> </li> <li> <p>Sybase SQL Anywhere 11.x</p> </li> </ul> </td> </tr> </table> <h2> Changes since Release 6.x </h2> <h3>Additions</h3> <ul> <li> <p>added support for <a href="https://msdn.microsoft.com/en-us/library/cc280604%28v=sql.100%29.aspx" id="link-id0x2aabdbbc6278"><code>SPARSE</code> columns</a> in <code>SQLColumns()</code> call</p> </li> <ul> <li> <p>added DSN options <code><nowiki>SHOWSPARSECOLS / ShowSparseCols</nowiki></code> and Multi-Tier connect option <code>-X</code> )</p> </li> <li> <p>details, based on test table:</p> <blockquote> <pre> <code><nowiki> CREATE TABLE tbl_sparse_test ( col1 INT SPARSE , col2 INT , col3 XML COLUMN_SET FOR ALL_SPARSE_COLUMNS ) </nowiki> </code> </pre></blockquote> <ul> <li> <p>wildcard query will return only <code>col2</code> and <code>col3</code>; will not include <code>SPARSE</code> columns. This is standard SQL Server behavior, and it cannot be changed. </p> <blockquote> <pre> <code><nowiki> SELECT * FROM tbl_sparse_test ; </nowiki> </code> </pre></blockquote> <p>To include <code>SPARSE</code> columns in results, they must be explicitly <code>SELECTed</code> </p> <blockquote> <pre> <code><nowiki> SELECT col1, col2, col3 FROM tbl_sparse_test ; </nowiki> </code> </pre></blockquote> </li> <li> <p>By default, calls to <code>SQLColumns()</code> don't return Sparse Columns. To receive full columns list:</p> <ul> <li> <p>via our Lite Edition ODBC driver — </p> <ol> <li> <p>open connection with <code>SHOWSPARSECOLS</code> in DSN connection string, e.g., <code><nowiki>"DSN=TdsSQL;UID=sa;PWD=sa;SHOWSPARSECOLS=Y;"</nowiki></code> </p> </li> <li> <p> <code><nowiki>SQLColumns (hstmt, NULL, 0, NULL, 0, L"tbl_sparse_test", SQL_NTS, NULL, 0 );</nowiki> </code> </p> </li> </ol> </li> <li> <p>via the Microsoft ODBC driver — </p> <ol> <li> <p> <code><nowiki>SQLSetStmtAttr (hstmt, SQL_SOPT_SS_NAME_SCOPE, (SQLPOINTER)SQL_SS_NAME_SCOPE_EXTENDED, SQL_IS_SMALLINT);</nowiki> </code> </p> </li> <li> <p> <code><nowiki>SQLColumns (hstmt, L"tempdb", SQL_NTS, L"dbo", SQL_NTS, L"tbl_sparse_test", SQL_NTS, NULL, 0 );</nowiki> </code> </p> </li> </ol> </li> </ul> </li> </ul> </li> </ul> <li> <p>added support for new SQL Server datatypes such as <a href="https://msdn.microsoft.com/en-us/library/bb677335.aspx" id="link-id0x2aab7f6655a8"><code>datetime2</code></a> </p> </li> <li> <p>added support for <a href="https://msdn.microsoft.com/en-us/library/dd304783.aspx" id="link-id0x107149af8"><code>NBCROW</code> token</a> </p> </li> <li> <p>added support for Sybase 15 </p> <ul> <li> <p>added support for <a href="http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc38151.1540/doc/html/jwi1287495761977.html" id="link-id0x2aac180e7f08"><code>BIGDATETIME</code> and <code>BIGTIME</code></a> </p> </li> <li> <p>added support for <code>UNITEXT</code> </p> </li> <li> <p>added support for <code><a href="http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc38151.1540/doc/html/san1278452908740.html" id="link-id0x2aac185b5d48">UNSIGNED BIGINT</a></code> </p> </li> </ul> </li> </ul> <h3>Fixes</h3> <ul> <li> <p>fixed issue with SQL Server <a href="https://msdn.microsoft.com/en-us/library/ms177603.aspx" id="link-id0x2aabdbb8e848"><code>BIT</code> datatype</a> </p> </li> <li> <p>fixed memory overwrite error, when DB procedure is called with <code><nowiki>SQL_PARAM_OUTPUT</nowiki></code> parameter of <code>CHAR/VARCHAR/LONGVARCHAR</code> </p> </li> <li> <p>fixed issue with <code>VARBINARY</code> datatype and DB procedures</p> </li> <li> <p>fixed issue with converting <code>TIMESTAMP</code> to <code>CHAR/WCHAR</code> </p> </li> <li> <p>fixed datatype info in <code><nowiki>SQLGetTypeInfo</nowiki></code> -- new Sybase and MSSQL datatypes were added</p> </li> <li> <p>fixed database catalog and query metadata info for Sybase 15's <code>UNSIGNED INT, UNSIGNED SMALLINT, BIGINT, SYSNAME, LONGSYSNAME</code> </p> </li> </ul>
UDA Data Space Bot
hwilliams@openlinksw.com
2015-06-23T16:18:08.671938-04:00
Why Do I Need To Pay For ODBC, JDBC, ADO.NET, OLE-DB Drivers? (revisited)
http://www.openlinksw.com:443/weblog/uda/135/?id=1847
2015-06-11T21:18:05Z
<h2>Situation Analysis</h2> <p>It's the year 2015, and the fundamental issues associated with the utility of data access drivers remain confusing. Basically, we remain uncertain about the value-to-compensation alignment of ODBC (Open Database Connectivity), JDBC (Java Database Connectivity), and ADO.NET drivers/providers.</p> <table style="border-spacing: 10px; margin-left: auto; margin-right: auto; padding: 10px; width: 95%;"> <tr> <th style="text-align: center; width: 45%;">ODBC</th> <th style="text-align: center; width: 45%;">JDBC</th> </tr> <tr> <td style="text-align: center; width: 45%;"> <a href="https://s-media-cache-ak0.pinimg.com/originals/ef/b2/7e/efb27e54ef098c18a93aa8a074d5817d.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" id="link-id0x1066f4c38"><img alt="Image" border="0" src="https://s-media-cache-ak0.pinimg.com/originals/ef/b2/7e/efb27e54ef098c18a93aa8a074d5817d.png" style="max-width: 400px; width: 100%" /></a> </td> <td style="text-align: center; width: 45%;"> <a href="https://s-media-cache-ak0.pinimg.com/originals/75/11/a8/7511a81c2e4ec244473cc514d997bd0a.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" id="link-id0x10619cce8"><img alt="Image" border="0" src="https://s-media-cache-ak0.pinimg.com/originals/75/11/a8/7511a81c2e4ec244473cc514d997bd0a.png" style="max-width: 400px; width: 100%" /></a> </td> </tr> <tr> <th style="text-align: center; width: 45%;" colspan="2">ADO.NET</th> </tr> <tr> <td style="text-align: center; width: 45%;" colspan="2"> <a href="https://s-media-cache-ak0.pinimg.com/originals/70/67/69/706769ab0ff453e94c50f38c956beeab.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" id="link-id0x108c5e078"><img alt="Image" border="0" src="https://s-media-cache-ak0.pinimg.com/originals/70/67/69/706769ab0ff453e94c50f38c956beeab.jpg" style="max-width: 400px; width: 100%" /></a></td> </tr> </table> <h3>Why do we pay for anything?</h3> <p>After allowing for consumer irrationality [<a href="http://www.theatlantic.com/business/archive/2013/01/the-irrational-consumer-why-economics-is-dead-wrong-about-how-we-make-choices/267255/" id="link-id0x10711d0f8">1</a>], the basis of any payment is fundamentally tied to the monetization of opportunity costs. Essentially, we pay for one thing to alleviate the (usually higher) costs of something else.</p> <p>The rest of this post focuses on highlighting the real pains associated with the $0.00 value misconception associated with Data Access Drivers: ODBC, JDBC, ADO.NET, OLE-DB, etc.</p> <h2>Real Costs of Data Access Drivers</h2> <p>In the most basic sense, there are some fundamental aspects of data access that are complex to implement and rarely implemented (if at all) by free drivers. The list includes:</p> <ul> <li> <b>Escape Syntaxes for Dates and Functions</b> -- abstraction for dates and function signatures at the application level (i.e., the same abstraction works across all compliant databases)</li> <li> <b>Metadata Calls which enable smarter ODBC compliant applications</b> -- this feature is typically missing in Drivers and abused by the Clients (consumers); i.e., clients are made DBMS specific by testing for specific DBMS names, rather than utilizing feature and functionality metadata returned by drivers</li> <li> <b>Scrollable Cursors</b> -- this is how you deal with change sensitivity and paging through large datasets; some drivers actually fake support and get away with it due to shortage of applications to test proper cursor types (Static, Forward-Only, Key-Set, Dynamic, and Mixed models).</li> </ul> <p>Beyond actual driver sophistication, in regards to key feature implementations, let's up the ante by veering into the area of data security. At the most basic level, It's extremely important to understand that all data access drivers provide read-write access to your databases; thus, it's imperative that data access drivers address the following:</p> <ul> <li>Read-Only or Read-Write Access modalities scoped to specific <ul> <li>users</li> <li>user groups</li> <li>target databases</li> <li>data access standards (e.g., ODBC, JDBC, ADO.NET) </li> <li>client applications</li> <li>client host operating systems</li> <li>client host IP addresses</li> </ul> </li> <li>Any combination of the above as part of a configurable collection of data access rules (or policies).</li> </ul> <p>Once you're done with security, you then have the thorny issue of data access and data flow management. In a nutshell, your driver needs to be able to handle:</p> <ul> <li> <i>Protection against Cartesian-product-based network flooding</i> (e.g., user queries an enormous table without knowing or understanding back-end implications)</li> <li> <i>Enabling or Disabling of key DBMS engine data access optimization features</i> (e.g. SQL RDBMS-specific extensions exposed via Environment Variables or SQL-command-based settings)</li> <li> <i>Conditional Connection Pooling</i> across various dimensions such as Users, User Groups, Applications, Host Operating Systems, IP Addresses</li> <li> <i>Encryption of Data</i> in Transit</li> </ul> <p>Once you've dealt with Security and Data Flow, you then have to address the enforcement of these settings across a myriad of ODBC compliant host, which is where Zeroconfig and centralized data access administration comes into play i.e., configure once (locally) and enforce globally.</p> <h2>OpenLink Universal Data Access (UDA) Drivers </h2> <p>When OpenLink Software entered the ODBC Driver Market segment (circa 1992), the issues above were the fundamental basis of our Multi-Tier Drivers. Although the marketplace highlighted our drivers for high performance, stability, and specification adherence -- to all of which we remain committed -- our fundamental engineering focus has always been skewed towards configurable data security, platform independence, and scalability.</p> <p>Every item of concern outlined in the section above is addressed by security features built into our Multi-Tier Drivers [<a href="http://uda.openlinksw.com/odbc/mt/" id="link-id0x106b2c0c8">2</a>][<a href="http://uda.openlinksw.com/jdbc/mt/" id="link-id0x108454e28">3</a>][<a href="http://uda.openlinksw.com/dotnet/" id="link-id0x108454f28">4</a>]. These features all leverage the fact that our multi-tier drivers include a sophisticated DB session rules book that enables construction and enforcement of user attribute (user name, application, client operating system, IP address, target database etc.) based rules which are applied to all database sessions (single or pooled). </p> <table style="border-spacing: 10px; margin-left: auto; margin-right: auto; padding: 10px; width: 95%;"> <tr> <td style="text-align: center; width: 45%;"> <a href="https://s-media-cache-ak0.pinimg.com/originals/ed/95/14/ed9514178ecf89849402af1c48942412.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" id="link-id0x107378c98"><img alt="Image" border="0" src="https://s-media-cache-ak0.pinimg.com/originals/ed/95/14/ed9514178ecf89849402af1c48942412.png" style="max-width: 400px; width: 100%" /></a> <div class="p2"></div></td> </tr> </table> <p>Today, in the year 2015, the security issues that pervade Data Access, whether via Native SQL RDBMS Drivers, or ODBC, JDBC, and ADO.NET Drivers/Providers, have only increased, courtesy of ubiquitous computing -- facilitated by the Internet & Web, across desktop and mobile device dimensions. Paradoxically, there remains a fundamental illusion that all Data Access Drivers are made the same; i.e., they simply provide you with the ability to connect to SQL RDBMS back-ends, for the industry standard price of $0.00, without consequence -- thereby skewing the very nature of SQL RDBMS data access and its security and privacy implications. </p> <p>I hope that this post brings some clarity to a very serious security and general configuration management issues associated with Data Access Drivers. Free ODBC Drivers offer nothing; that's why they cost $0.00. When dealing with real issues associated with Open Data Access, you must have a handle on the inevitable issues of data security and privacy. </p> <h2>Links</h2> <ol> <li> <a href="http://www.theatlantic.com/business/archive/2013/01/the-irrational-consumer-why-economics-is-dead-wrong-about-how-we-make-choices/267255/" id="link-id0x1082b54b8">The Irrational Consumer: Why Economics Is Dead Wrong About How We Make Choices</a> </li> <li> <a href="http://uda.openlinksw.com/odbc/mt/" id="link-id0x1082b55b8">OpenLink Multi-Tier ODBC Drivers</a> </li> <li> <a href="http://uda.openlinksw.com/jdbc/mt/" id="link-id0x1067e1e68">OpenLink Multi-Tier JDBC Drivers</a> </li> <li> <a href="http://uda.openlinksw.com/dotnet/mt/" id="link-id0x1067e1fd8">OpenLink Multi-Tier ADO.NET Providers</a> </li> </ol> <h2>Related</h2> <ul> <li> <a href="http://www.dba-oracle.com/t_auditing4_horror_stories_inside_jobs.htm" id="link-id0x107044328"><span class="s1">Oracle Security Auditing Horror Stories</span> </a><span class="s1"> -- showcases social dimension of security that exploits literal identifiers used by SQL RDBMS products in regards to user identity</span> </li> <li> <a href="http://searchoracle.techtarget.com/news/2240015728/Database-security-strategies-need-to-grow-up-in-2010?" id="link-id0x1062ad718">Database Security Strategies Need to Grow Up in 2010</a> </li> <li> <a href="http://walkingoncoals.blogspot.com/2009/12/whos-data-is-it-part-1.html" id="link-id0x10772cc78"><span class="s1">Whose Data is it? Part 1</span> </a> </li> <li> <span class="s1"><a href="http://walkingoncoals.blogspot.com/2009/12/whos-data-is-it-part-2.html" id="link-id0x10876fc48">Whose Data is it? Part 2</a> </span> </li> </ul>
UDA Data Space Bot
hwilliams@openlinksw.com
2015-07-17T14:00:52.056449-04:00
Life after sun.jdbc.odbc.JdbcOdbcDriver
http://www.openlinksw.com:443/weblog/uda/135/?id=1840
2015-06-04T21:12:19Z
<h2>In the beginning...</h2> <p>When Sun originally released Java 1.0, there were no JDBC drivers -- there wasn't even a JDBC.</p> <p>Data access came in Java 2.0, as <a href="http://www.oracle.com/technetwork/java/overview-141217.html" id="link-id0x2aab5b257518">JDBC 1.0</a>, but there were very few JDBC drivers from any source, as would be expected with any new technology -- but the ODBC ecosystem (itself then at only v2.0) was going strong.</p> <p>Sun recognized that Java wouldn't have as much uptake without a functional data access solution -- so they produced and bundled the original Type 1 JDBC-ODBC Bridge Driver, <code>sun.jdbc.odbc.JdbcOdbcDriver</code>, but from the very beginning, they warned that users "should use the JDBC-ODBC Bridge only for experimental prototyping or when you have no other driver available."</p> <p>That bundled JDBC-ODBC Bridge was (and always remained) single-threaded, and though it received some other updates along the way, it only ever supported a subset of JDBC 2.0 and later. Sun (and later Oracle) recommended that users employ "a pure Java JDBC technology-enabled driver, type 3 or 4, in order to get all of the benefits of the Java programming language and the JDBC API."</p> <h2>Where does OpenLink Software come in?</h2> <p>Even in the early days of JDBC, we saw that there would not always be an available JDBC driver for a given target data source -- but the numbers of ODBC drivers were rapidly increasing, supporting every major and many minor DBMS and other data sources. We saw a need for an enterprise-grade, non-experimental Bridge solution, with full support for the JDBC API.</p> <p>We delivered this first as our <a href="http://uda.openlinksw.com/jdbc-odbc-mt/" id="link-id0x2aab5bf439b8">Type 3 Multi-Tier solution</a>, bridging from JDBC in one environment (typically a UNIX-like OS) to ODBC in another (most often, Microsoft Windows). </p> <p style="text-align:center"> <a href="http://uda.openlinksw.com/images/jdbcodbcmt.gif" target="_blank" id="link-id0x7fe32e904c08"><img src="http://uda.openlinksw.com/images/jdbcodbcmt.gif" alt="Type 3 Enterprise Edition (Multi-Tier) Architecture Diagram" title="Type 3 Enterprise Edition (Multi-Tier) Architecture Diagram" style="max-width: 300px; height: auto" /> </a> <br /> Type 3 Enterprise Edition (Multi-Tier) Architecture Diagram <br /> <i>(click to enlarge)</i> </p> Soon afterward, we released our first <a href="http://uda.openlinksw.com/jdbc-odbc-st/" id="link-id0x2aab5b257628">Type 1 Single-Tier solution</a>, first for Windows, but quickly also supporting Linux, Mac OS X, Solaris, AIX, HP-UX, and other UNIX-like OS, through our own <a href="http://www.iodbc.org/dataspace/iodbc/wiki/iODBC/" id="link-id0x2aab5b0cbc48">iODBC driver manager</a> -- which was itself helping to expand the ODBC ecosystem far beyond its birthplace on Windows. <p style="text-align:center"> <a href="http://uda.openlinksw.com/images/jdbcodbcst.gif" target="_blank" id="link-id0x7fe32e385fe8"><img src="http://uda.openlinksw.com/images/jdbcodbcst.gif" alt="Type 1 Lite Edition (Single-Tier) Architecture Diagram" title="Type 1 Lite Edition (Single-Tier) Architecture Diagram" style="max-width: 300px; height: auto" /> </a> <br /> Type 1 Lite Edition (Single-Tier) Architecture Diagram <br /> <i>(click to enlarge)</i> </p> <h2>Why is Java 8 so special?</h2> <p>Sun long warned that the JRE-bundled Bridge was transitional, and Oracle confirmed immediately upon acquisition that it would "be removed in JDK 8. In addition, Oracle does not support the JDBC-ODBC Bridge." Java 8 is now in full release, and indeed, the venerable <code>sun.jdbc.odbc.JdbcOdbcDriver</code> is no longer present, as evidenced by the scary looking error --</p> <blockquote> <code><pre>java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver at java.net.URLClassLoader$1.run(URLClassLoader.java:372) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:360) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:30 at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:259) </pre> </code> </blockquote> <p>Any Java users or applications relying on ODBC connections and also needing the security and other improvements found in Java 8 are left high and dry... Or would be, but for OpenLink Software.</p> <p>Our JDBC-to-ODBC Bridge, in both <a href="http://uda.openlinksw.com/jdbc-odbc-st/" id="link-id0x2aab5b0cc1f8">Type 1</a> and <a href="http://uda.openlinksw.com/jdbc-odbc-mt/" id="link-id0x2aab5b0cc308">Type 3</a> forms, has been available and regularly updated since its original release for JDBC 1. Fully multi-threaded since Java Runtime Environments (JREs) could handle such, we have also kept pace with the JDBC API -- now at <a href="http://docs.oracle.com/javase/8/docs/technotes/guides/jdbc/jdbc_42.html" id="link-id0x2aab5b0cc548">JDBC 4.2, in 2015's Java 8 a/k/a JDK/JVM/JRE 1.8</a> -- and maintained compatibility with the also-evolving <a href="https://msdn.microsoft.com/library/ee388580.aspx" id="link-id0x2aab5b0cc6a8">ODBC API, now at 3.8</a>.</p> <p>Especially important for the modern world, our solutions support both 64-bit and 32-bit environments, including both 64-bit JVMs and ODBC drivers, and our <a href="http://uda.openlinksw.com/jdbc-odbc-mt/" id="link-id0x7fe35a5e2168">Type 3 solutions</a> can even bridge between these, whether you have a 64-bit JVM and need to connect to a 32-bit ODBC driver, or you have a 32-bit JVM and need to connect to a 64-bit ODBC driver.</p> <p>As always, our solutions are <a href="http://download.openlinksw.com/solwiz/" id="link-id0x2aab5b0cc0e8">available for immediate download</a>, with a free two-week trial license provided alongside. We encourage pre-purchase installation, configuration, and testing, with support provided through our <a href="http://boards.openlinksw.com/support/index.php" id="link-id0x2aab5b0cc9a8">web-based Support Forums</a> and even <a href="http://support.openlinksw.com/support/online-support.vsp" id="link-id0x2aab5b0ccaa8">free up-and-running Support Cases</a>. Once you've confirmed the driver works for you, <a href="http://uda.openlinksw.com/offers/" id="link-id0x2aab5b255fc8">entry level and special offer licenses</a> may be purchased online or through our Sales Team; these as well as custom license configurations or <a href="http://www.openlinksw.com/partners/" id="link-id0x2aab5b256168">partnership (IBP, ISV, VAR, OEM, etc.) arrangements</a> are always available by <a href="http://www.openlinksw.com/contact/" id="link-id0x2aab5b256288">direct contact</a>.</p>
UDA Data Space Bot
hwilliams@openlinksw.com
2016-05-12T22:39:03.406510
DataSpaces Bulletin: December issue now online!
http://www.openlinksw.com:443/weblog/uda/135/?id=1492
2008-12-09T18:09:00Z
<p>The highly anticipated <a href="http://support.openlinksw.com/supportweb/DataSpacesBulletin-2008-12" id="link-id0x2108a398">December 2008 issue of the DataSpaces Bulletin is now available</a>!</p> <p>This month's DataSpaces contains material of interest to the Virtuoso developer and UDA user community alike —</p> <ol> <li>Introduction to Virtuoso Universal Server (Cloud Edition).</li> <li>Links to Virtuoso and Linked Data mailing lists.</li> <li>UDA license management tips and tricks.</li> </ol>
UDA Data Space Bot
hwilliams@openlinksw.com
2008-12-09T15:06:53-05:00
OpenLink Software Releases new Universal Data Access Driver Suite 6.1
http://www.openlinksw.com:443/weblog/uda/135/?id=1301
2008-01-20T13:38:14Z
<div> <div style="display:none;">OpenLink Software Releases new Universal Data Access Driver Suite 6.1</div> <pre style="font-family: Times New Roman,Times,serif;"> <font size="3">New <a href="http://dbpedia.org/resource/ODBC" id="link-id0x23592bd8">ODBC</a>, <a href="http://dbpedia.org/resource/JDBC" id="link-id0x2373d4e8">JDBC</a>, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id0x233ed248">ADO.NET</a>, and <a href="http://dbpedia.org/resource/OLEDB" id="link-id0x2358f3c8">OLE DB</a> Drivers for Major Databases</font><br /><br /><font size="4"><font size="3">Burlington, MA. Tuesday, January 15, 2008 - OpenLink Software, Inc., technology leader in the development and deployment of secure, <br />high-performance universal data access middleware, announces the commercial availability of Release 6.1 of its high-performance and <br />secure Universal Data Access Drivers. <br /><br />The updated components support new and older releases of Oracle, Microsoft SQL Server, Sybase, IBM DB2, IBM Informix, Ingres, Progress<br />Open Edge, MySQL, PostgreSQL, and Firebird, across Windows, Mac OS X, Linux, Solaris, HP-UX, and AIX.<br /><br />New features across then entire suite include:<br /><br />- XA-based two-phase commit across ODBC, JDBC, and ADO.NET<br /><br />- Microsoft SQL Linked Server compatible ODBC provider for OLE DB (32 & 64 Bit)<br /><br />- ODBC Bridge for JDBC accessible Databases (32 & 64 Bit)<br /><br />- Ruby on Rails Adapter for ODBC- and JDBC-accessible databases<br /><br />- Support for 64-bit Windows running on x86_64 (e.g., Opteron, Xeon) and IA64 (e.g., Itanium2) Processors across all Data Access APIs -- <br /> ODBC, JDBC, OLEDB, and ADO.NET<br /><br />- Support in Mac OS X Universal binaries for PPC and Intel 32-bit mode on Tiger (10.4) and Leopard (10.5), plus Intel 64-bit mode on Leopard<br /><br />- ADO.NET 2.0 Support (and an ADO.NET 3.0 Beta Provider on request)<br /><br />- ADO.NET integration with Visual Studio 2005 <br /><br />"The new product release builds on our legacy as leading provider of quality, secure and high-performance data access drivers to all major<br />DBMS engines," said Kingsley Idehen, President & CEO.<br /><br />"We are at a critical juncture within the enterprise and across the Web, where data access, portability, and unobtrusive integration require<br />the technological prowess and leadership qualities we've consistently demonstrated over the last 15 years. Standardized data access<br />middleware that enables the development and deployment of database and operating system independent applications remains a critical priority<br />for organizations worldwide," he added.<br /><br />About OpenLink Software<br />======================= <br /><br />OpenLink Software is a privately held software company with offices in the U.S.A., United Kingdom, Russia, and Bulgaria. It has been the<br />leading provider and technology innovator in the universal data access middleware market since 1993, with over 10,000+ companies currently<br />using its products worldwide.<br /><br />Additional information on OpenLink Software can be obtained from the web site: http://www.openlinksw.com/.<br /><br />Contact:<br />Helen Heward-Mills,<br />OpenLink Software, Inc.<br />Tel: 781 273 0900<br />Email: hmills@openlinksw.com</font><br /> </font><br /></pre> </div>
UDA Data Space Bot
hwilliams@openlinksw.com
2008-01-20T09:48:19.000009-05:00
Announcing ODBC Data Adapter for Ruby on Rails, release 1.1
http://www.openlinksw.com:443/weblog/uda/135/?id=1071
2006-10-23T17:03:03Z
<div> <div style="display:none;">Announcing ODBC Data Adapter for Ruby on Rails, release 1.1</div> <p> <span style="font-family:monospace;font-size:11pt;"><em>OpenLink Software are pleased to announce release 1.1 of the ODBC Adapter for Ruby on Rails (ActiveRecord). <br /> <br />This unifies data-access from a plethora of individual adapters to one common configuration in Rails; rather than having a multitude of DBMS-specific Rails Adaptors with inconsistent functionality and behaviour, you can now focus on a single data adapter with consistent behaviour across ODBC-accessible databases on all Ruby-supported platforms. This release adds support for DB2, MySQL, Sybase and SQL Server. The supported DBMSes now include: Oracle, Informix, Ingres, OpenLink Virtuoso, SQL Server, Sybase, MySQL and DB2. <br /> <br />The adapter can be downloaded from rubyforge: </em></span> <span style="font-family:monospace;font-size:11pt;"> <em><a href="http://rubyforge.org/projects/odbc-rails/">http://rubyforge.org/projects/odbc-rails/</a> </em> </span> <span style="font-family:monospace;font-size:11pt;"> <em> <br /> </em> </span> </p> <p style="text-align:right;font-size:10px;">Technorati Tags: <a href="http://www.technorati.com/tag/odbc" rel="tag">odbc</a>, <a href="http://www.technorati.com/tag/rails" rel="tag">rails</a>, <a href="http://www.technorati.com/tag/ruby" rel="tag">ruby</a>, <a href="http://www.technorati.com/tag/webdevelopment" rel="tag">webdevelopment</a> </p> </div>
UDA Data Space Bot
hwilliams@openlinksw.com
2006-10-23T13:03:03.000002-04:00
Why Web 2.0 clones are not innovative
http://www.openlinksw.com:443/weblog/uda/135/?id=1070
2006-10-23T16:02:56Z
<div> <div style="display:none;">Why Web 2.0 clones are not innovative</div> <p> <a href="http://www.geospatialsemanticweb.com/2006/10/04/why-web-20-clones-are-not-innovative">Why Web 2.0 clones are not innovative</a>: </p> <p style="text-align:right;"> Richard MacManus at ZDNet writes his view on <a href="http://blogs.zdnet.com/web2explorer/index.php?p=277" target="_blank" title="Web 2.0 Clones - where is all the innovation?">Web 2.0 clone applications</a>. He observed that every country has its set of Web 2.0 clones &#8212; bookmarking sites that looks del.icio.us, photo sharing sites that like Flickr, social networking sites like MySpace, community news sites like digg, etc. He criticizes those Web 2.0 clones being non-innovative. </p> <p> It&#8217;s true that most of the clone apps don&#8217;t come with innovative ideas, but it would be unwise to think that they totally have no values. Contrary to Richard&#8217;s point of view, I think clone apps are essential ingredients in helping the IT business in developing countries to become innovative. </p> <p> Innovative ideas don&#8217;t usually born in the thin air. They requires extensive testings and experiments. The mature IT business in the US has extensive knowledge and experience in developing innovative ideas. People here have a general idea about what works and what doesn&#8217;t. In many developing countries, however, the settings are completely different. </p> <p> Take China for an example. Its IT market is still in an infant stage comparing to that of the US. Chinese businesses that recently entered the market are still in the stage trying to figure out how to make profits and establish a sustainable business model. The need to be innovative now, perhaps, is not on the todo lists of the business executives. </p> <p> Furthermore, the past generation of Chinese engineers and developers were not exactly trained to be innovative and think outside-the-box. They were trained with impressive memorization skills and obey orders from superiors. It&#8217;s unfair to expect this generation of Chinese IT workers to live and breath with innovations as their US counterparts do. </p> <p> Given this type of harsh environment in many developing countries, it&#8217;s quite natural to act as copycats and repeat business ideas that have good track records. In fact, it&#8217;s a good business if being a copycat can bring profits. </p> <p> We don&#8217;t criticize Yahoo! Maps being a copycat of Google Maps. We don&#8217;t criticize Google Notebook being a copycat of del.icio.us. Why should we criticize foreign Web 2.0 clones when their intention is to learn how to enter a global IT market and to become prosperous? Maybe in the cloning process, copycats will discover innovative ideas by accident. </p> <p style="text-align:right;font-size:10px;">Technorati Tags: <a href="http://www.technorati.com/tag/business" rel="tag">business</a>, <a href="http://www.technorati.com/tag/web2.0" rel="tag">web2.0</a> </p> </div>
UDA Data Space Bot
hwilliams@openlinksw.com
2006-10-23T12:02:56.000005-04:00
What Problem Does Natural Language Search Solve?
http://www.openlinksw.com:443/weblog/uda/135/?id=1068
2006-10-23T16:02:55Z
<div> <div style="display:none;">What Problem Does Natural Language Search Solve?</div> <p> <a href="http://techdirt.com/articles/20061005/162157.shtml">What Problem Does Natural Language Search Solve?</a>: <br />Matt Marshall recently posted a story about a new search engine <a href="http://venturebeat.com/2006/10/02/bold-start-up-powerset-about-to-raise-10m-to-take-on-google/">looking to raise a lot of money</a> at a very high valuation, which has created <a href="http://www.techmeme.com/061005/p47#a061005p47">quite a bit of buzz</a> as people argue over whether or not the company has a chance, or deserves such a high valuation. Matt followed up with <a href="http://venturebeat.com/2006/10/04/powerset-that-secretive-little-search-engine-company/">more details on the company</a>, though he still expresses some reasonable skepticism. Like many people, my first reaction on hearing about it was that I can&#39;t remember a year that&#39;s gone by without someone claiming to have come out with a revolution in natural language search. However, when it comes to search engine news, no one can go through the history and explain why something is a bad idea <a href="http://blog.searchenginewatch.com/blog/061005-095006">quite like Danny Sullivan can</a>. He lists out all the attempts at natural language search, and shows how each one failed (in some cases, miserably). He also points out that the problem with natural language search is that it requires everyone to change their behavior. As with any startup, when you&#39;re looking at their chances, the big question to ask is pretty simple: what problem does it solve? Plenty of people have figured out how to search with keywords. In fact, many of us find it more natural and faster than trying to construct a natural language query. So, while all the natural language search engines that come along insist that searches suck because they can&#39;t understand the the searcher, it&#39;s not clear that&#39;s the real problem. When people want to use a search engine, they want to find what they want. That means being able to search quickly. Dumping two or three keywords into a box is always going to be a lot faster than figuring out the natural language equivalent. So, perhaps someone can enlighten us. What is the problem natural language search solves? </p> <p style="text-align:right;"> <span style="font-size:10pt;">Technorati Tags: </span> <span style="font-size:10pt;"><a href="http://www.technorati.com/tag/search" rel="tag">search</a></span><span style="font-size:10pt;"> </span> </p> <p> (via Techdirt) </p> <p style="text-align:right;font-size:10px;">Technorati Tags: <a href="http://www.technorati.com/tag/natural-language" rel="tag">natural-language</a>, <a href="http://www.technorati.com/tag/search" rel="tag">search</a> </p> </div>
UDA Data Space Bot
hwilliams@openlinksw.com
2006-10-23T12:02:55.000002-04:00
Planning the Software Industrial Revolution
http://www.openlinksw.com:443/weblog/uda/135/?id=843
2005-05-13T17:33:19Z
<p> <a href="http://virtualschool.edu/cox/pub/PSIR/">Here</a> is another timeless article by Brad Cox titled: Planning The Software Industrial Revolution.</p> <p>Enjoy!</p>
UDA Data Space Bot
hwilliams@openlinksw.com
2006-06-22T08:56:58-04:00
Social Construction of Reality
http://www.openlinksw.com:443/weblog/uda/135/?id=842
2005-05-13T11:31:42Z
<p>An interesting <a href="http://www.virtualschool.edu/mon/SocialConstruction/index.html">article</a> by <a href="http://www.virtualschool.edu/cox/">Brad Cox</a>. (inventor of <a href="http://en.wikipedia.org/wiki/Objective-C">Objective-C</a>) that's provides great foundation for a understanding number of issues that are relevant to social networking systems.</p>
UDA Data Space Bot
hwilliams@openlinksw.com
2006-06-22T08:56:58-04:00
Standards Contempt Revisited
http://www.openlinksw.com:443/weblog/uda/135/?id=835
2005-05-12T15:11:14Z
<p>My entire time in the IT industry has been spent primarily trying to develop, architect, test, mentor, evangelize, and educate about one simple subject: Standards Appreciation!</p> <p>The trouble with "Standards Appreciation" is that vendors see standards from the following perspectives primarily:</p> <ol> <li>Yet another opportunity to lock-in the customer <br /> </li> <li>If point 1. fails then undermine the standard vociferously (an activity that takes many covert forms; attack performance, security, and maturity)<br /> </li> <li>Developers don't like standards (the real reason for this is to-do lists and timeframes in most cases)</li> </ol> <p> <a href="http://koranteng.blogspot.com">Korateng Ofusu-Amaah</a> provides insightful perspective on the issues above, in a recent "must read" <a href="http://koranteng.blogspot.com/2005/05/unloved-html-button-and-other.html">blog post</a> about how this dysfunctionality plays out today in the realm of HTML Buttons and Forms. Here are some notebable excerpts:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p> <em>"Instead my discourse devolved into a case of I told you so, a kind of Old Testament view of things instead of the softer New Age stylings that are in vogue these days. Sure there was a little concern for the users that had been hurt by lost data, but there was almost no empathy for the developers who had to lose their weekends furiously reworking their applications to </em><a href="http://www.amazon.com/exec/obidos/ASIN/B00004XQMV/korantenstoli-20"></a><em>do the right thing especially because it appeared that they would rather persist in trying to do the wrong thing. <br /> <br />The sentiment behind that mini tempest-in-a-teapot however was a recognition of the fact that <span style="FONT-WEIGHT: bold">those who have been quietly evangelizing the web style were talking about the wrong thing and to the wrong people."</span> <br /> <br />...</em> </p> <p> <em>"..As application developers we should ask for better forms, we should be demanding of browser makers things like XForms or Web Forms 2.0 to make sure that we can go beyond the kind of stilted usability that we currently have. Our users would appreciate our efforts in that vein but for now, they know what to expect. Until then application developers should push back when we are told to "do the wrong thing".</em> </p> </blockquote> <p>There is an unfortunate mindset trend at the current time that espouses: "Sloppiness" is good, and "Simple" justifies inadequacy at all times. Today, the real focus of most development endeavours is popularity first and coherance (backward compatibility, standards compliance, security, scalability etc.) a distant second, if you can simply make things popular then that justifies the sloppiness (acquisition, VC money, Blogosphere Juice etc.). Especially as someone else will ultimately have to deal with the predictable ramifications of the sloppiness. </p> <p>Standards are critical to the success of IT investment within any enterprise, but standards are difficult to design, write, implement, and then comprehend; due to the inherent requirement for abstraction - it's a top down, as opposed to bottom up, process.</p> <p>Vendors will never genuinely embrace standards, until IT decision makers demand standards compliance of them, by demonstrating a penchant for smelling out "<a href="http://www.joelonsoftware.com/articles/LeakyAbstractions.html">leaky abstractions</a>" embedded within product implementations. Naturally, this requires a fundamental change of mindset for most decision makers. It means moving away from the "this analyst said...", "I heard that company X is going to deliver....", "I read that .....", "I saw that demo..." approach to product evaluation, to a more knowledgeable evaluation process that seeks out the What, Why, and How of any prospective IT solution. </p> <p>Knowledge empowers all of the time. It's a gift that stands the test of time once you invest some time in its acquisition (unfortunately this gift isn't free!). Ignorance with all its superficial seduction (free and widely available!), is temporary bliss at best, and nothing but heartache over time. </p>
UDA Data Space Bot
hwilliams@openlinksw.com
2006-06-22T08:56:58-04:00
A Collection of PHP and ODBC How-To Links
http://www.openlinksw.com:443/weblog/uda/135/?id=832
2005-05-01T15:46:45Z
<p>In 2005 I am somewhat surprised at the steady level of emails and commentary expressing confusion about the use of PHP and ODBC.</p> <p>Here are a few links that resolve any confusion about this matter:</p> <ol> <li>OpenLink's PHP and iODBC HOWTO doc: <a href="http://www.iodbc.org/index.php?page=languages/php/odbc-phpHOWTO">http://www.iodbc.org/index.php?page=languages/php/odbc-phpHOWTO</a> <br /> </li> <li>PHP Everywhere's guide: <a href="http://phplens.com/phpeverywhere/node/view/9">http://phplens.com/phpeverywhere/node/view/9</a> <br /> </li> <li>Zili Zhang's piece from 1999 (time flies!): <a href="http://www.tldp.org/HOWTO/MSSQL6-Openlink-PHP-ODBC.html">http://www.tldp.org/HOWTO/MSSQL6-Openlink-PHP-ODBC.html</a> <br /> </li> <li>Zend's ODBC Tutorial: <a href="http://www.zend.com/zend/tut/odbc.php">http://www.zend.com/zend/tut/odbc.php</a> </li> </ol> <p>Or simple google on PHP and ODBC or PHP and iODBC ...</p>
UDA Data Space Bot
hwilliams@openlinksw.com
2006-06-22T08:56:58-04:00
Why Do I Need To Pay For ODBC, JDBC, ADO.NET, OLE-DB Drivers?
http://www.openlinksw.com:443/weblog/uda/135/?id=1605
2010-02-05T06:03:53Z
<p>Payment is a function of pain alleviation (opportunity cost) monetization. </p> <p> This post is about highlighting the real pains associated with the $0.00 misconception associated with Data Access Drivers: <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id13bcea18">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id137def30">JDBC</a>, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id14da8ce8">ADO</a>.NET, <a href="http://dbpedia.org/resource/OLE_DB" id="link-id113ee4f0">OLE-DB</a> etc.</p> <p>In the most basic sense, there are some fundament aspects of data access that are complex to implement and rarely implemented (if at all) by free drivers, the list includes:</p> <ol> <li>Escape Syntaxes for Dates and Functions</li> <li>Metadata Calls which enable smarter ODBC compliant applications (this feature is typically missing on Driver Side and abused on the Client side i.e., making clients DBMS specific by testing for specific DBMS names)</li> <li>Scrollable Cursors, this is how you deal with change sensitivity, and most drivers actually fake support and get away with it due to shortage of applications to test proper cursor types (Static, Forward-Only, Key-Set, Dynamic, and Mixed models).</li> </ol> <p>Okay, so we're done with actual driver sophistication re. implementation of critical features. Let's Up the ante by veering into the area of security. At the most basic level, It's extremely important to understand that all data access driver types provide read-write access to your databases; thus, it's imperative that data access drivers address the following:</p> <ol> <li> Read-Only or Read-Write Access scoped to specific Users</li> <li> Ditto applied to specific User Groups </li> <li> Ditto applied to Database Names </li> <li> Ditto applied to specific ODBC compliant applications </li> <li> Ditto applied to specific ODBC host operating systems </li> <li> Ditto applied to specific IP addresses or Ranges on your Network </li> <li> Any combination of items 1-6 as part of a configurable data access rules/policy system. </li> </ol> <p>Once you're done with security, you then have the thorny issue of data access and data flow management. In a nutshell, your driver needs to be able to handle:</p> <ol> <li> Protection against cartesian product network flooding (e.g., user clicks on Customer Table via an ODBC compliant application without comprehension of back-end implications)</li> <li> Enabling or Disabling of key DBMS engine data access optimization features (e.g. DBMS specific extensions exposed via Environment Variables of <a href="http://dbpedia.org/resource/SQL" id="link-id113cc808">SQL</a> commands based settings) </li> <li> Conditional Connection Pooling across User, User Groups, Applications, Host Operating System, IP Address dimensions.</li> </ol> <p>Once you've dealt with Security and Data Flow, you then have to address the enforcement of these settings across a myriad of ODBC compliant host, which is where Zeroconfig and centralized data access administration comes into play i.e., configure once (locally) and enforce globally.</p> <p>When <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id1161faf0">OpenLink Software</a> entered the ODBC Driver Market segment in 1992, the issues above where the fundamental basis of our Multi-Tier Drivers. Thus, although we distinguished ourselves via performance, stability, and specification adherence, our fundamental engineering focus has always been skewed towards security and configurability, alongside high-performance and scalability.</p> <p>As we close 2009, the security issues that pervade Native DBMS Drives, ODBC, JDBC, ADO.NET, OLE-DB etc. Drivers have only increased, courtesy of ubiquitous computing, sadly though, there remains a fundamental illusion that Data Access Drivers simply connect you to DBMS back-ends, and since you can get these drivers at $0.00 from most DBMS vendors they can't be that important. </p> <p>I hope that this post brings some clarity to a very serious security and general configuration management issues associated with Data Access Drivers. Free ODBC Drivers offer nothing, when it comes to the real issues of Open Data Access. If they did, they wouldn't be worth $0.00!</p> <p> <strong>Note:</strong> wondering if this has anything to do with <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1188f968">Linked Data</a> (my current data access focal point)? Well, remember, the <a href="http://www.w3.org/DesignIssues/LinkedData.html" id="link-id14d6d788">Linked Data meme</a> is fundamentally about <a href="http://dbpedia.org/resource/Representational_State_Transfer" id="link-id114051e8">REST</a> based Open Data Access & Integration via HTTP; thus, what applies to Relational Model databases naturally applies to their more granular Graph Model relatives. Basically, data access security never goes away, it just gets more granular, complex, and ultimately, mercurial.</p> <h3>Related</h3> <ul> <li> <a href="http://uda.openlinksw.com/res/oplfeatures/index.html" id="link-id1388e920">OpenLink Universal Data Access Drivers Overview</a> - clickable diagram exposing features and benefits</li> <li> <a href="http://uda.openlinksw.com/odbc/mt/" id="link-id118ab728">OpenLink Multi-Tier ODBC Drivers</a> </li> <li> <a href="http://uda.openlinksw.com/jdbc/mt/" id="link-id13dea018">OpenLink Multi-Tier JDBC Drivers</a> </li> <li> <a href="http://uda.openlinksw.com/dotnet/mt/" id="link-id13b4aec8">OpenLink Multi-Tier ADO.NET Providers</a> </li> <li> <a href="http://www.openlinksw.com/info/docs/odbcwhp/mtarc.htm" id="link-id137d74d0">Multi-Tier Drivers Overview</a> (1993 White Paper excerpt)</li> <li> <a href="http://www.openlinksw.com/info/docs/odbcwhp/tableof.htm#Table%20of%20Contents" id="link-id13b8fb28">OpenLink ODBC White Paper</a> (actual 1993 White Paper)</li> <li> <a href="http://virtuoso.openlinksw.com" id="link-id14702040">OpenLink Virtuoso</a> - which provides a Virtual Conceptual Model (via HTTP, RDF, based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11b01080">Linked Data</a>) Layer above ODBC or JDBC accessible Data Sources </li> <li> <a href="http://www.dba-oracle.com/t_auditing4_horror_stories_inside_jobs.htm" id="link-id13e64618">Oracle Security Auditing Horror Stories</a> -- Social Dimensions of Security compounded by Value (literal username and password) Based User Identity</li> <li> <a href="http://searchoracle.techtarget.com/news/2240015728/Database-security-strategies-need-to-grow-up-in-2010?" id="link-id116c25c8">Database Security Strategies Need to Grow Up in 2010</a> </li> <li> <a href="http://www.dataflux.com/dfblog/?p=1458" id="link-id13e92180">First Law of Data Quality</a> </li> <li> <a href="http://walkingoncoals.blogspot.com/2009/12/whos-data-is-it-part-1.html" id="link-id13fa4948">Who's Data is it? Part 1</a> </li> <li> <a href="http://walkingoncoals.blogspot.com/2009/12/whos-data-is-it-part-2.html" id="link-id13f00b08">Who's Data is it? Part 2</a> </li> </ul>
UDA Data Space Bot
hwilliams@openlinksw.com
2015-07-17T13:21:13.919963-04:00