我正在使用 SQL 开发人员,我通常的工作主要是查询名称很长的数据库表。我没有对数据库的管理员访问权限,所以我无法将表名更改为短名称。另外,它是一个集中式数据库许多办公室的许多人都在工作。说到这一点,我希望能够为这些长表名提供简短的参考名称,这对于我的 SQL 开发人员来说是本地的。例如,如果表名是 *I_am_a_long_name*,我想要一个简短的参考名称,如IAALN(简称由我提供),所以我可以写:
select * from IAALN;
我怎样才能做到这一点?
我正在使用 SQL 开发人员,我通常的工作主要是查询名称很长的数据库表。我没有对数据库的管理员访问权限,所以我无法将表名更改为短名称。另外,它是一个集中式数据库许多办公室的许多人都在工作。说到这一点,我希望能够为这些长表名提供简短的参考名称,这对于我的 SQL 开发人员来说是本地的。例如,如果表名是 *I_am_a_long_name*,我想要一个简短的参考名称,如IAALN(简称由我提供),所以我可以写:
select * from IAALN;
我怎样才能做到这一点?
如果您有足够的权限,您可以创建同义词:
CREATE SYNONYM IAALN
FOR somedb.I_am_a_long_name;
最简单的解决方案是使用同义词(如@Smileek 建议的那样)。如果您不能或不想这样做,您可以为要查询的每个表创建一个视图:
CREATE VIEW IAALN
AS
SELECT * FROM I_am_a_long_name;
并在您的即席查询中使用这些视图。
您可以使用您正在使用的编程语言为您的长名称定义常量。然后在查询中引用那些常量。
define(IAALN,'I_am_a_long_name')
sql = "select * from ".IAALN;
或者别名是另一种选择
SELECT
IAALN.*,
FROM
I_am_a_long_name as IAALN;
第一种方式:
创建表 IAALN 作为 select * from I_am_a_long_name;
创建表 IAALN 后...您可以触发任何选择语句...
从 IAALN 中选择 * ;
第二种方式:
为 User_name 创建或替换同义词 IAALN。I_am_a_long_name;