Présentation des extensions de langage SQL ServerWhat is SQL Server Language Extensions?

S’APPLIQUE À : ouiSQL Server nonAzure SQL Database nonAzure Synapse Analytics (SQL DW) nonParallel Data Warehouse APPLIES TO: yesSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Les extensions de langage sont une fonctionnalité de SQL Server utilisée pour l’exécution de code externe.Language Extensions is a feature of SQL Server used for executing external code. Les données relationnelles peuvent être utilisées dans le code externe à l’aide du framework d’extensibilité.The relational data can be used in the external code using the extensibility framework.

Dans SQL Server 2019, Java est pris en charge.In SQL Server 2019, Java is supported. Le runtime Java par défaut est Zulu Open JRE.The default Java runtime is Zulu Open JRE. Vous pouvez également utiliser un autre JRE ou SDK Java.You can also use another Java JRE or SDK.

Ce que vous pouvez faire avec les extensions de langageWhat you can do with Language Extensions

Les extensions de langage utilisent le framework d’extensibilité pour exécuter du code externe.Language Extensions uses the extensibility framework for executing external code. L’exécution du code est isolée des processus du moteur de base, mais entièrement intégrée à l’exécution des requêtes SQL Server.Code execution is isolated from the core engine processes, but fully integrated with SQL Server query execution. Les extensions de langage vous permettent d’exécuter du code là où résident les données, éliminant ainsi la nécessité de tirer (pull) les données du réseau.They let you execute code where the data resides, eliminating the need to pull data across the network.

Les langages externes sont définis avec CREATE EXTERNAL LANGUAGE.External languages are defined with CREATE EXTERNAL LANGUAGE. La procédure stockée système sp_execute_external_script sert d’interface pour l’exécution du code.The system stored procedure sp_execute_external_script is used as the interface for executing the code.

Les extensions de langage offrent plusieurs avantages :Language Extensions provides multiple advantages:

  • Sécurité des données.Data security. Le fait de rapprocher l’exécution du langage externe de la source de données évite les déplacements de données inutiles ou non sécurisés.Bringing external language execution closer to the source of data avoids wasteful or insecure data movement.
  • Vitesse.Speed. Les bases de données sont optimisées pour les opérations basées sur un jeu.Databases are optimized for set-based operations. Les récentes innovations dans le domaine des bases de données, notamment les tables en mémoire, permettent d’obtenir rapidement des résumés et des agrégations et constituent un complément parfait à la science des données.Recent innovations in databases such as in-memory tables make summaries and aggregations lightning, and are a perfect complement to data science.
  • Facilité de déploiement et d’intégration.Ease of deployment and integration. SQL ServerSQL Server centralise les opérations pour de nombreuses autres applications et tâches de gestion des données.is the central point of operations for many other data management tasks and applications. En utilisant des données qui résident dans la base de données, vous avez la certitude que les données utilisées par Java sont cohérentes et à jour.By using data that resides in the database, you ensure that the data used by Java is consistent and up-to-date.

Bien démarrerHow to get started

Étape 1 : Installer le logicielStep 1: Install the software

Étape 2 : Configurer un outil de développementStep 2: Configure a development tool

Les développeurs écrivent généralement du code sur leur propre ordinateur portable ou station de travail de développement.Developers typically write code on their own laptop or development workstation. Avec les extensions de langage dans SQL Server, ce processus reste le même.With language extensions in SQL Server, there is no need to change this process. Une fois l’installation terminée, vous pouvez exécuter du code Java sur SQL Server.After installation is complete, you can run Java code on SQL Server.

Étape 3 : Écrire du codeStep 3: Write your first code

Exécutez du code Java à partir d’un script T-SQL :Execute Java code from within T-SQL script:

LimitationsLimitations

  • Le nombre de valeurs dans les mémoires tampons d’entrée et de sortie ne peut pas dépasser MAX_INT (2^31-1), car il s’agit du nombre maximal d’éléments pouvant être alloués dans un tableau dans Java.The number of values in input and output buffers cannot exceed MAX_INT (2^31-1) since that is the maximum number of elements that can be allocated in an array in Java.

Étapes suivantesNext steps