在不同数据库 Informix 中的两个表之间创建同义词
Create synonyms between two tables in different databases Informix
我的数据库 gcd001
包含多个包含数据的表 tab1
、tab2
、tab3
,第二个数据库 dde002
包含相同的表 tab1
、tab2
、tab3
,但没有数据。
我正在尝试创建一个脚本,用于在这两个数据库的表之间创建同义词。我试过类似的东西:
# !/bin/sh
# USAGE : cresyn.sh {dtabase_with_data} {dtabase_no_data} {Table}
dtabase_with_data=
dtabase_no_data=
Table=
dbaccess CREATE SYNONYM FOR :;
done
但是没有用,我真的不知道该怎么做。
你能帮忙吗?
DB-Access 命令不会像那样解释命令行参数。它的使用模式是:
dbaccess [-|database] [-|script]
如果您不指定它,它会将 .sql
扩展名添加到 script
参数(因此它只执行 .sql
个文件)。如果没有脚本选项,它将与 select 指定的数据库进行交互。没有指定的数据库,它也可以进行交互,而无需预先 select 数据库。脚本名称的破折号表示“读取标准输入”。数据库名称的破折号表示“不要预先 select 数据库”;大概脚本将 select 或创建数据库本身。
您可能想使用:
if [ $# != 3 ]
then
echo "Incorrect arguments. Usage: [=11=] db_with db_without tablename" >&2
exit 1
fi
dbaccess - <<EOF
CREATE SYNONYM FOR :;
EOF
这将连接到 'database without data' (</code>) 并创建一个与引用 table 的 table (<code>
) 同名的同义词在 'database with data'(</code>)中。您可以使用您设置但未使用的变量。</p>
<p>请注意,在您创建同义词之前,tables <code>tab1
.. tab3
不能存在于 'database without data' 中。或者您必须为同义词使用替代名称,例如 syn_tab1
, .. syn_tab3
(但是您的脚本需要为现有的 table 名称和同义词提供参数已创建。
我的数据库 gcd001
包含多个包含数据的表 tab1
、tab2
、tab3
,第二个数据库 dde002
包含相同的表 tab1
、tab2
、tab3
,但没有数据。
我正在尝试创建一个脚本,用于在这两个数据库的表之间创建同义词。我试过类似的东西:
# !/bin/sh
# USAGE : cresyn.sh {dtabase_with_data} {dtabase_no_data} {Table}
dtabase_with_data=
dtabase_no_data=
Table=
dbaccess CREATE SYNONYM FOR :;
done
但是没有用,我真的不知道该怎么做。 你能帮忙吗?
DB-Access 命令不会像那样解释命令行参数。它的使用模式是:
dbaccess [-|database] [-|script]
如果您不指定它,它会将 .sql
扩展名添加到 script
参数(因此它只执行 .sql
个文件)。如果没有脚本选项,它将与 select 指定的数据库进行交互。没有指定的数据库,它也可以进行交互,而无需预先 select 数据库。脚本名称的破折号表示“读取标准输入”。数据库名称的破折号表示“不要预先 select 数据库”;大概脚本将 select 或创建数据库本身。
您可能想使用:
if [ $# != 3 ]
then
echo "Incorrect arguments. Usage: [=11=] db_with db_without tablename" >&2
exit 1
fi
dbaccess - <<EOF
CREATE SYNONYM FOR :;
EOF
这将连接到 'database without data' (</code>) 并创建一个与引用 table 的 table (<code>
) 同名的同义词在 'database with data'(</code>)中。您可以使用您设置但未使用的变量。</p>
<p>请注意,在您创建同义词之前,tables <code>tab1
.. tab3
不能存在于 'database without data' 中。或者您必须为同义词使用替代名称,例如 syn_tab1
, .. syn_tab3
(但是您的脚本需要为现有的 table 名称和同义词提供参数已创建。