在MySQL5.1中,有没有办法让一个表可以用两个不同的名字访问? 我正在考虑像Linux文件系统上的符号链接。
我知道的
CREATE VIEW myview AS SELECT * FrOM mytable
的事情,但我不仅需要从这两个名称select,而且还删除等…
你可能会问为什么我想这样做? 这是关于获得一个商业,闭源应用程序的工作,这是巧妙编程(通常,表名都是小写的,但偶尔,他们使用大写的名字为同一个表…)。 噢,这将是另一个想法:是否有办法告诉MySQL不关心表名的大小写(如在Windows文件系统?)? 这也会做的伎俩…
…find答案:lower_case_table_names,一个variables。 由于这是解决我的问题,但不是我的问题的答案(这仍然是有趣的),我不回答我自己的问题呢…
感谢您的洞察!
一个。
考虑查看lower_case_table_names系统variables。
像MySQL代理这样的抽象层可以在这里帮助。
你可以在mysql 5.0中创build可更新的视图。 在这里检查,并search页面“可更新”。
我不是一个MySQL内部专家,但我想象一下,简单地说,符号链接或硬链接将在疯狂结束。 mysql可能会通过文件名caching表文件状态,如果两个文件指向相同的数据,最终可能会导致mysql在一个“名称”处更改数据文件,而不是另一个,从而导致公然的损坏。
我认为MySQL的联邦表可能是你的根本问题的答案。 不是最好的性能,但我认为,如果你创build了一个指向本地主机上现有表的联邦表,它将工作。