Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

SQL Server:Bagaimana cara memanggil fungsi yang ditentukan pengguna (UDF) di server tertaut?

Untuk memanggil prosedur jarak jauh, Anda perlu mengaktifkan RPC OUT di Server Tertaut Anda. Buka Properties Linked Server di SSMS lalu klik "Server Option" dan pastikan RPC Out adalah True.

Dan... Tautan Anda memiliki solusi untuk masalah Anda. Lihat opsi terakhir di WorkAround

Ini kasus percobaan untuk Anda:

use master
go
EXEC master.dbo.sp_addlinkedserver @server = N'(LOCAL)', @srvproduct=N'SQL Server';
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'(LOCAL)',@useself=N'True',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL;
EXEC master.dbo.sp_serveroption @server=N'(LOCAL)', @optname=N'rpc out', @optvalue=N'true'
GO
Use Testing
GO
CREATE FUNCTION [dbo].[UserGroupMembershipNames](@UserGUID uniqueidentifier)  
RETURNS VARCHAR(8000)
AS
BEGIN
    RETURN 'hello'
END
GO
select dbo.[UserGroupMembershipNames]('4278E0BF-2F7A-4D60-A09C-95E517E21EBC')
GO
exec [(LOCAL)].Testing.dbo.sp_executesql 
N'select dbo.UserGroupMembershipNames(@UserGUID)',N'@UserGUID uniqueidentifier'
,@UserGUID='4278E0BF-2F7A-4D60-A09C-95E517E21EBC'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan SQL Server pada perintah pembaruan - Kesalahan parah terjadi pada perintah saat ini

  2. Cara Memformat Angka dengan Koma di SQL Server

  3. SQL Server 2012 :ekstrak grup Regex

  4. Memahami Ukuran Penyimpanan 'datetime2' di SQL Server

  5. Apakah saya benar-benar perlu menggunakan SET XACT_ABORT ON?