<script type="text/javascript"> 
  </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>


MySQL包含了一些可能在其他SQL找不到的扩充。要注意如果你使用他们,你的代码将不与其他SQL服务器兼容。在一些情况下,你可以编写包括MySQL扩展的代码,但是仍然是可移植的,通过使用形式的注释。在这种情况下,MySQL将进行词法分析并且执行在注释内的代码,好像它是任何其它MySQL语句,但是其他SQL服务器将忽略扩展。例如:


SELECT/*!STRAIGHT_JOIN*/col_nameFROMtable1,table2WHERE...


如果你在'!'后增加一个版本数字,该语法将仅在MySQL版本是等于或比使用的版本数字新时才执行:


CREATE/*!32302TEMPORARY*/TABLE(aint);


上面的意思是如果你有3.23.02或更新,那么MySQL将使用关键词。

MySQL扩展被列在下面:字段类型、、和不同的和类型。字段属性、、和。缺省地,所有的字符串比较是忽略大小写的,由当前的字符集决定了(缺省为ISO-8859-1Latin1)排序顺序。如果你不喜欢这样,你应该用属性或使用强制符声明列,它导致根据MySQL服务器主机的ASCII顺序进行排序。MySQL将每个数据库映射一个MySQL数据目录下面的目录,将数据库表映射到数据库目录下的数据库文件名。这有2个含意:在区分大小写文件名的(象大多数Unix系统一样)上的MySQL中数据库名字和表名是区分大小写的。如果你有困难记得表名,接受一个一致的约定,例如总是用小写名字创建数据库和表。数据库、表、索引、列或别名可以以数字开始(但是不能仅由数字组成)。你可以使用标准的系统命令备份、重命名、移动、删除和拷贝表。例如,重命名一个表,重命名、和文件为相应的表。在SQL语句中,你可以用语法访问不同数据库中的表。一些SQL服务器提供同样的功能但是称它们为这(用户空间)。MySQL不支持类似在中的表空间。在数字列上被允许。在一语句里面使用和。见7.12句法.在一个语句选项。得到如何联结表的描述。在一个语句里面使用索引、在字段前缀上的索引和使用或。见7.7句法。使用或。使用,这里“list”超过一个元素。在一个语句里面使用、或。见7.8句法。在一个里面语句使用。在一个语句中使用多重、、或子句。使用带关键词的。你能用单个语句抛弃多个表。语句的子句。和语句的子句。,,和语句的子句。使用。在多数情况下,这句法与的兼容。见7.16句法。语句。见7.9句法。语句。见7.21句法(得到表、列等的信息)。字符串可以被或包围,而不只是。使用转义字符。语句。见7.25句法。你不需要命名所有在部分的被选择的列。这为一些很特定的情况给出更好的性能,而不是一般的查询。见7.4.13用于子句的函数。为了方便来自于SQL环境其他为用户,MySQL对许多函数支持别名。例如,所有的字符串功能都支持ANSISQL句法和ODBC句法。共5页  第1页    
<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>


<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>