Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>مرحبا , Muhammed!</p> <p>Database independence is neither "good" nor "bad". It is a design decision; it is a trade-off. </p> <p>Let's talk about the choices:</p> <p><em>It would result in a hard to maintain code</em><br> This is the choice of your programmers. If you make your code database-independent, then you should use a layer between your code and the database. The best kind of layer is one that someone else has written.</p> <p><em>...Database design with the least common features in all supported DBMSs</em><br> This is, by definition, true. Luckily, the common features in all supported databases are fairly broad; they should all implement the SQL-99 standard.</p> <p><em>...bad performance and bad scalability</em> This should not be true. The layer should add minimal cost to the database.</p> <p><em>...this is the most feature ever that could increase the development cost and time exponentially with complexity. The code will be dreadful.</em> Again, I recommend that you use a layer between your code and the database.</p> <p>You didn't specify which language or platform you're writing for. Luckily, many languages have already abstracted out databases:</p> <ul> <li>Java has <a href="http://devapp.sun.com/product/jdbc/drivers" rel="nofollow noreferrer">JDBC drivers</a> </li> <li>Python has <a href="http://www.python.org/dev/peps/pep-0249/" rel="nofollow noreferrer">the Python Database API</a></li> <li>.NET has <a href="http://msdn.microsoft.com/en-us/library/aa286484.aspx" rel="nofollow noreferrer">ADO.NET</a></li> </ul> <p>Good luck.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload