1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>SQL identifiers: GNOME Data Access 5 manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GNOME Data Access 5 manual">
<link rel="up" href="ch04.html" title="Foreword about abstraction">
<link rel="prev" href="null_handling.html" title="NULL handling when using variables">
<link rel="next" href="gen_blobs.html" title="Binary large objects (BLOBs)">
<meta name="generator" content="GTK-Doc V1.32 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch04.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="null_handling.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gen_blobs.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="sect1">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="gen_sql_identifiers"></a>SQL identifiers</h2></div></div></div>
<p>
The SQL standard has never defined if SQL identifiers (database object's names) have to be case sensitive
or not, leaving that
subject to each database engine implementation. All of them accept two syntaxes for SQL identifiers:
</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>the first is if the SQL identifier is surrounded by double quotes (sometimes backquotes
or other characters), usually making the SQL identifier case sensitive (and also making
it possible to use reserved SQL keywords as identifiers).</p></li>
<li class="listitem"><p>the second is if it's not enquoted, usually meaning that the SQL identifier is not
case sensitive.</p></li>
</ul></div>
<p>
</p>
<div class="note"><p>Sometimes those rules don't apply or apply only partially. For example a MySQL server, depending
on how it is configured and on what kind of OS it is running on, will have different sets of meanings
for these notations.
</p></div>
<p>
</p>
<p>
As a result, <span class="application">Libgda</span> has to be the least intrusive possible when the user wants to execute an SQL statement,
and lets the database being accessed apply its own rules. However <span class="application">Libgda</span> features meta data information
retrieval (getting the list of tables, views,...) and there some representation conventions have been fixed,
see the <a class="link" href="information_schema.html#information_schema:sql_identifiers" title="SQL identifiers">meta data section about SQL identifiers</a>
for more information.
</p>
<p>
The following diagram illustrates how <span class="application">Libgda</span> handles SQL identifiers' representations depending where
they are used:
</p>
<div class="mediaobject"><img src="SqlIdentifiers.png" alt="Diagram illustrating how Libgda handles SQL identifiers' representations"></div>
<p>
</p>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.32</div>
</body>
</html>
|