Maison >base de données >tutoriel mysql >Comment différentes bases de données gèrent-elles les identifiants délimités pour les noms de tables et de colonnes ?

Comment différentes bases de données gèrent-elles les identifiants délimités pour les noms de tables et de colonnes ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-29 14:06:11968parcourir

How Do Different Databases Handle Delimited Identifiers for Table and Column Names?

Citations de noms différents dans les bases de données

Les bases de données utilisent des identifiants délimités pour permettre l'utilisation de noms de tables et de colonnes pouvant contenir des caractères tels que des espaces, caractères spéciaux, caractères internationaux et identifiants sensibles à la casse. Différentes bases de données utilisent différents caractères pour ces délimiteurs.

MySQL

MySQL utilise des guillemets inverses par défaut. Cependant, il prend en charge les guillemets standard lorsque SQL_MODE est défini sur ANSI_QUOTES :

SELECT * FROM `my_table`;  // MySQL default
SELECT * FROM "my_table";  // MySQL with ANSI_QUOTES

Microsoft SQL Server et Sybase

Ces bases de données utilisent des crochets comme délimiteurs par défaut. Ils prennent également en charge les guillemets doubles en utilisant le paramètre suivant :

SELECT * FROM [my_table];  // Default
SET QUOTED_IDENTIFIER ON;
SELECT * FROM "my_table";

InterBase et Firebird

Ces bases de données nécessitent de définir le dialecte SQL sur 3 pour utiliser des identifiants délimités.

SET SQL DIALECT 3;  // Enable delimited identifiers
SELECT * FROM "my_table";

Autres bases de données

La plupart des autres les bases de données, y compris SQL standard, utilisent des guillemets comme identifiants délimités :

SELECT * FROM "my_table";

En utilisant des identifiants délimités, les utilisateurs de bases de données peuvent créer des noms de tables et de colonnes qui ne sont pas autrement pris en charge par SQL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn