Azure SQL DB Server + Azure SQLデータベースが1つあります。このDB内には、ロジックの一部としてマスタDBの機能を呼び出す機能があります。同じAzure SQL Server上の他のDBからマスタDBの機能を呼び出す
例:
CREATE FUNCTION [dbo].[EncryptByKey]
(
@EncryptionKeyId nvarchar(1024),
@ValueToEncrypt varchar(MAX)
)
RETURNS VARCHAR(MAX)
AS
BEGIN
RETURN master.dbo.fn_varbintohexstr(ENCRYPTBYKEY(Key_GUID(@EncryptionKeyId), @ValueToEncrypt))
END
は私にエラーを与える:
Cannot find either column "master" or the user-defined function or aggregate "master.dbo.fn_varbintohexstr", or the name is ambiguous.
代わりに私がしようとした場合:
exec master.dbo.fn_varbintohexstr(123)
私が手にエラーがある:
Reference to database and/or server name in 'master.dbo.fn_varbintohexstr' is not supported in this version of SQL Server.
Azure SQLサーバーでユーザーのDBからmaster DB関数を使用する方法はありますか?
なぜEXEC insted of SELECTを使用しますか? master.dbo.fn_varbintohexstr(123) – sepupic
@sepupicを選択してください。慎重に読んでください。 execを使用した例は、より適切なエラーメッセージを得るためにのみ使用されます。選択も機能していません。 –
https://stackoverflow.com/questions/11284998/cant-query-between-databases-in-sql-azure – sepupic