No SQL Server, você pode usar o
APP_NAME()
para obter o nome do aplicativo para a sessão atual. Isso pressupõe que o aplicativo define esse valor de nome. Você pode usar esta função para distinguir entre diferentes aplicativos, como forma de realizar ações diferentes para esses aplicativos.
Observe que o cliente fornece o nome do aplicativo e, portanto, o resultado retornado por essa função simplesmente reflete o nome fornecido pelo cliente. Por esse motivo, a Microsoft aconselha que essa função não seja usada para verificações de segurança.
Sintaxe
A função não requer nenhum argumento, então sua sintaxe é assim:
APP_NAME ( )
Exemplo 1 – Resultado no Azure Data Studio
Aqui está o resultado que recebo ao usar o Azure Data Studio.
SELECT APP_NAME( ) AS Result;
Resultado:
+--------------+ | Result | |--------------| | azdata-Query | +--------------+
Exemplo 2 – Resultado em mssql-cli
Aqui está o resultado que recebo ao usar a interface de linha de comando mssql-cli.
SELECT APP_NAME( ) AS Result;
Resultado:
+-----------------------------------+ | Result | |-----------------------------------| | Core .Net SqlClient Data Provider | +-----------------------------------+
Exemplo 3 – Usando APP_NAME() em uma instrução condicional
Aqui está um exemplo de uso de
APP_NAME()
em uma instrução condicional para fornecer um formato de data diferente dependendo do aplicativo que está sendo usado. IF APP_NAME() = 'azdata-Query' PRINT 'Application: ' + APP_NAME() + char(10) + 'Date: ' + CONVERT ( varchar(100) , GETDATE(), 111); ELSE IF APP_NAME() = 'Core .Net SqlClient Data Provider' PRINT 'Application: ' + APP_NAME() + char(10) + 'Date: ' + CONVERT ( varchar(100) , GETDATE(), 103);
Resultado no Azure Data Studio:
Application: azdata-Query Date: 2019/12/06
Resultado em mssql-cli:
Application: Core .Net SqlClient Data Provider Date: 06/12/2019