sql >> Base de Datos >  >> RDS >> Sqlserver

Use APP_NAME() para obtener el nombre de la aplicación de la sesión actual en SQL Server

En SQL Server, puede usar APP_NAME() función para obtener el nombre de la aplicación para la sesión actual. Esto supone que la aplicación establece ese valor de nombre.

Puede usar esta función para distinguir entre diferentes aplicaciones, como una forma de realizar diferentes acciones para esas aplicaciones.

Tenga en cuenta que el cliente proporciona el nombre de la aplicación, por lo que el resultado devuelto por esta función simplemente refleja el nombre que proporciona el cliente. Por este motivo, Microsoft recomienda que esta función no se utilice para controles de seguridad.

Sintaxis

La función no requiere ningún argumento, por lo que su sintaxis es la siguiente:

APP_NAME  ( )

Ejemplo 1:resultado en Azure Data Studio

Este es el resultado que obtengo cuando uso Azure Data Studio.

SELECT APP_NAME( ) AS Result;

Resultado:

+--------------+
| Result       |
|--------------|
| azdata-Query |
+--------------+

Ejemplo 2:resultado en mssql-cli

Este es el resultado que obtengo cuando uso la interfaz de línea de comandos mssql-cli.

SELECT APP_NAME( ) AS Result;

Resultado:

+-----------------------------------+
| Result                            |
|-----------------------------------|
| Core .Net SqlClient Data Provider |
+-----------------------------------+

Ejemplo 3:uso de APP_NAME() en una declaración condicional

Aquí hay un ejemplo del uso de APP_NAME() en una declaración condicional para proporcionar un formato de fecha diferente dependiendo de la aplicación que se utilice.

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 en Azure Data Studio:

Application: azdata-Query
Date: 2019/12/06

Resultado en mssql-cli:

Application: Core .Net SqlClient Data Provider
Date: 06/12/2019