分大小写。
MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:数据库名与表名是严格区分大小写的;表的别名是严格区分大小写的;列名与列的别名在所有的情况下均是忽略大小写的;变量名也是严格区分大小写的;MySQL在Windows下都不区分大小写。
不区分大小写在MySQL中,数据库和表对就于那些目录下的目录和文件。因而, *** 作系统的敏感性决定数据库和表命名的大小写敏感。这就意味着数据库和表名在Windows中是大小写不敏感的,而在大多数类型的Unix系统中是大小写敏感的。
应用环境
与其他的大型数据库例如 Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于 MySQL是开放源码软件,因此可以大大降低总体拥有成本。
索引是一种特殊的文件(InnoDB 数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。索引不是万能的,索引可以加快数据检索 *** 作,但会使数据修改 *** 作变慢。
以上内容参考:百度百科-mySQL
以我的windows环境为例:在my.ini [mysqld]下面增加
lower_case_table_names=0
就可以新建大写表名的表了
也可以rename table 表名 to 新表名 去改现有的表
改时注意 要先改成一个不存在的表 再改回全部大写的表
比如你要把test改成TEST
先rename table test to test1
再rename table test1 to TEST
利用information_schema.columns这个元数据表就行,查哪个数据库替换下test,或者就不加数据库限制,你自己改改
SELECTt.TABLE_SCHEMA,
t.TABLE_NAME,
t.COLLATION_NAME
FROM
information_schema.COLUMNS t
WHERE t.TABLE_SCHEMA = 'test'
AND (
BINARY t.COLUMN_NAME LIKE '%A%'
OR BINARY t.COLUMN_NAME LIKE '%B%'
OR BINARY t.COLUMN_NAME LIKE '%C%'
OR BINARY t.COLUMN_NAME LIKE '%D%'
OR BINARY t.COLUMN_NAME LIKE '%E%'
OR BINARY t.COLUMN_NAME LIKE '%F%'
OR BINARY t.COLUMN_NAME LIKE '%G%'
OR BINARY t.COLUMN_NAME LIKE '%H%'
OR BINARY t.COLUMN_NAME LIKE '%I%'
OR BINARY t.COLUMN_NAME LIKE '%J%'
OR BINARY t.COLUMN_NAME LIKE '%K%'
OR BINARY t.COLUMN_NAME LIKE '%L%'
OR BINARY t.COLUMN_NAME LIKE '%M%'
OR BINARY t.COLUMN_NAME LIKE '%N%'
OR BINARY t.COLUMN_NAME LIKE '%O%'
OR BINARY t.COLUMN_NAME LIKE '%P%'
OR BINARY t.COLUMN_NAME LIKE '%Q%'
OR BINARY t.COLUMN_NAME LIKE '%R%'
OR BINARY t.COLUMN_NAME LIKE '%S%'
OR BINARY t.COLUMN_NAME LIKE '%T%'
OR BINARY t.COLUMN_NAME LIKE '%U%'
OR BINARY t.COLUMN_NAME LIKE '%V%'
OR BINARY t.COLUMN_NAME LIKE '%W%'
OR BINARY t.COLUMN_NAME LIKE '%X%'
OR BINARY t.COLUMN_NAME LIKE '%Y%'
OR BINARY t.COLUMN_NAME LIKE '%Z%'
)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)