引用于:http://sulong.iteye.com/blog/145342
SQL 中的大小写规则在语句的不同部分是不同的,而且还取决于所引用的东西以及运行的操作系统。下面给出相应的说明:
■ SQL 关键字和函数名。关键字与函数名是不区分大小写的。可按任意的大小写字符给出。
■ 数据库与表名。MySQL 中数据库和表名对应于服务器主机上的基本文件系统中的目录和文件。因此,数据库与表名是否区分大小写取决于主机上的操作系统处理文件名的方式。运行在 UNIX 上的服务器处理数据库名和表名是区分大小写的,因为UNIX 的文件名是区分大小写的。而Windows 文件名是不区分大小写的,所以运行在Windows上的服务器处理数据库名和表名也是不区分大小写的。如果在UNIX 服务器上创建一个某天可能会移到Windows 服务器上的数据库,应该意识到这个特性:如果现在创建了两个分别名为abc 和ABC 的表,它们在Windows 机器上将是没有区别的。避免这种情况发生的一种方法是选择一种字符(如小写),总是以这种字符创建数据库和表名。这样,在将数据库移到不同的服务器时,名称的大小写便不会产生问题。
■ 列与索引名。MySQL 中列和索引名是不区分大小写的。
■ 别名。别名是区分大小写的。可按任意的大小写字符说明一个别名(大写、小写或大小写混合),但是必须在任何查询中都以相同的大小写对其进行引用。不管数据库、表或别名是否是区分大小写的,在同一个查询中的任何地方引用同一个名称都必须使用相同的大小写。对于SQL 关键字、函数名或列名和索引名没有这个要求。可在同一个查询中多个地方用不同的大小写对它们进行引用。当然,如果使用一致的大小写而不是“胡乱写”的风格(如SelECt NamE FrOm …),相应的查询可读性要强得多。
分享到:
相关推荐
MySQL 的 SQL 语句大小写不敏感问题解决方案 MySQL 的 SQL 语句大小写不敏感问题是一...MySQL 的 SQL 语句大小写不敏感问题是一个需要注意的问题,通过设置表名的大小写规则和字段的 BINARY 属性,可以解决这个问题。
2. **选择正确的校对规则**:校对规则决定了字符串的排序规则以及是否区分大小写。这里推荐使用`gbk_chinese_ci`,表示按照简体中文排序,并且忽略大小写。 示例创建数据库的SQL语句如下: ```sql CREATE DATABASE...
尽管如此,我将基于标题和描述中提供的关键词“Effective MySQL之SQL语句最优化”来构建知识点。 1. SQL语句最优化的概念:在数据库管理中,对SQL语句进行优化是提高数据库性能的关键环节。最优化的SQL语句能够在...
在这个"java操作mysql数据库,不写sql语句版"的主题中,我们将探讨如何利用这些工具来实现这一目标。 1. Hibernate:这是一个强大的Java ORM框架,它允许我们通过Java对象模型与数据库进行交互,而无需编写SQL。...
这意味着在创建表、视图或其他数据库对象时所指定的名字,在后续的SQL语句中必须完全匹配,包括大小写。 ##### 创建数据库对象时的注意事项 当创建数据库对象时,如果名字包含大写字母,例如`CREATE TABLE TUser ...
我们将详细阐述四个主要规则:SQL语句的结束方式、保留关键字的大小写规则、如何使用空白和换行、以及在SQL语句中添加注释的方法。 首先,规则1强调了SQL语句结束的标识。在MySQL命令行中,每一个SQL语句都必须以...
### MySQL优化之SQL语句与索引优化 #### 数据库设计合理性 在MySQL数据库的优化过程中,合理设计数据库(表)至关重要。一个合理的数据库设计能够有效地提高查询性能、减少数据冗余并确保数据完整性。 - **3NF**...
MySQL prepare语法: PREPARE statement_name FROM preparable_SQL_statement; /*定义*/ EXECUTE statement_name ...语句名称对大小写不敏感。preparable_stmt可以是一个文字字符串,也可以是一个包含了语句文本的
大小写规则方面,SQL关键字和函数名不区分大小写,而数据库名和表名是否区分大小写取决于操作系统文件系统的大小写敏感性。字段名和索引名在所有操作系统中都不区分大小写,但别名是区分大小写的。 接下来,对...
3. 列名和列的别名在查询时忽略大小写,这意味着在编写SQL语句时,可以不考虑列名的大小写。 4. 变量名在MySQL中始终区分大小写。 5. 如果希望在查询时区分字段值的大小写,可以为字段设置BINARY属性。例如: - ...
此外,尽管设置为1可以使MySQL在逻辑上不区分大小写,但为了保持一致性,建议在定义表名和编写SQL语句时始终使用小写,避免因大小写问题引起不必要的困扰。 在开发过程中,特别是涉及跨平台的应用,了解并适当地...
本文将深入探讨SQL Server与MySQL这两种主流数据库管理系统中关于大小写敏感性的设置。 #### SQL Server 大小写敏感性设置 SQL Server默认情况下对标识符(例如表名、列名等)是不区分大小写的。然而,在某些场景...
- 在SQL语句中使用反引号来明确指定表名的大小写。 - 示例:`SELECT * FROM `User` WHERE id = 1;`。 3. **始终使用小写字母**: - 如果不希望更改服务器配置,可以选择始终使用小写字母来创建表名。 - 这种...
在MySQL数据库中,查询操作默认情况下是不区分大小写的,这意味着如果你在查询条件中使用了不同的大小写字母,比如"aaa"和"Aaa",它们会被视为相同,从而可能导致你期望的精确匹配失败。这对于一些特定场景,比如...
在导入过程中,需要注意处理可能出现的数据类型冲突、大小写敏感性差异等问题。 5. 规范化和重构:在将数据从MySQL迁移到SQL Server时,你可能需要对数据库进行规范化,遵循SQL Server的最佳实践,例如,使用更严格...
在MySQL数据库管理中,表名和数据库名的大小写敏感性是一个重要的配置选项,尤其是在不同操作系统环境下。在Linux系统中,默认情况下,MySQL是严格区分大小写的,这与Windows环境下的行为形成鲜明对比,后者默认不...
在MySQL中,列名和列别名通常在所有情况下都是忽略大小写的,这意味着查询语句中的列名大小写不必严格匹配。但是,如果你需要在查询时区分字段值的大小写,可以使用`BINARY`关键字。例如: 1. 创建表时指定列类型为...
总的来说,通过调整`lower_case_table_names`配置,我们可以根据项目需求让MySQL在处理数据库和表名时变得不区分大小写,但这并不意味着在编写SQL语句时可以忽略大小写规则。了解并正确使用这些配置可以帮助我们更...
* 标识符的命名规则取决于当前操作系统,原则上认为是区分大小写的。 * 推荐使用下划线的方式,不用驼峰法,因为大小写的问题。 * 标识符可以使用任意字符、数字、符号,甚至是中文,但是一些特色的组合,例如纯数字...