MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment vérifier le type de données d'une colonne en SQL

En SQL, les columns La vue de schéma d'information, qui renvoie des informations sur les colonnes, est une vue standard ISO prise en charge par la plupart des principaux SGBDR. Vous pouvez utiliser cette vue pour obtenir des informations sur le type de données d'une colonne.

La plupart des principaux RDBM fournissent également d'autres méthodes pour obtenir des informations sur les colonnes.

Voici des exemples d'obtention du type de données d'une colonne dans diverses bases de données SQL.

Les information_schema.columns Afficher

Comme mentionné, la plupart des principaux SGBDR prennent en charge le information_schema.columns vue.

Voici un exemple d'utilisation de cette vue pour renvoyer des informations sur le type de données de colonne :

SELECT 
    COLUMN_NAME, 
    DATA_TYPE, 
    CHARACTER_MAXIMUM_LENGTH AS MAX_LENGTH, 
    CHARACTER_OCTET_LENGTH AS OCTET_LENGTH 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME = 'Products' 
AND COLUMN_NAME = 'ProductName';

Remplacer Products et ProductName avec le nom de votre table et colonne respectivement. Ajoutez/réduisez le nombre de colonnes renvoyées selon les besoins.

La plupart des principaux SGBDR offrent un moyen plus concis d'obtenir des informations sur les tables et les colonnes. Certains d'entre eux sont répertoriés ci-dessous.

SQLite

Ce qui précède ne fonctionne pas dans SQLite.

Le moyen le plus rapide/le plus simple de le faire dans SQLite est d'utiliser le PRAGMA table_info() déclaration :

PRAGMA table_info(Regions);

Alternativement, vous pouvez interroger le sqlite_schema table. Dans SQLite, chaque base de données contient un sqlite_schema table qui stocke le schéma de cette base de données. Voici un exemple d'obtention d'informations sur les Regions table dans le Northwind base de données :

SELECT sql 
FROM Northwind.sqlite_schema 
WHERE tbl_name = 'Regions';

Une autre façon de le faire est d'utiliser le .schema commande :

.schema Regions

Voir 5 façons de vérifier le type de données d'une colonne dans SQLite pour plus d'options.

MySQL

MySQL prend en charge le information_schema.columns vue, mais vous trouverez peut-être plus facile d'utiliser une autre méthode, telle que le DESCRIBE déclaration :

DESCRIBE Pets;

Cela renvoie des informations sur une table appelée Pets .

Vous pouvez ajouter le nom de la colonne pour le limiter à une seule :

DESCRIBE Pets PetName;

Cela renvoie des informations sur le PetName colonnes dans les Pets tableau.

Le DESCRIBE est en fait un raccourci pour SHOW COLUMNS FROM . Par conséquent, vous pouvez remplacer DESCRIBE avec SHOW COLUMNS FROM si vous préférez.

Voir 4 façons de vérifier le type de données d'une colonne dans MySQL pour plus d'options et d'exemples.

MariaDB

MariaDB est très similaire à MySQL, et nous pouvons donc également utiliser le DESCRIBE déclaration avec MariaDB.

Et comme avec MySQL, DESCRIBE est un raccourci pour SHOW COLUMNS FROM .

Donc, voici un exemple d'utilisation de cette syntaxe

SHOW COLUMNS FROM Pets
WHERE Field = 'PetName';

Comme vous pouvez le voir, le DESCRIBE la syntaxe est beaucoup plus concise, mais au moins nous connaissons nos options.

Je dois également mentionner que MariaDB prend également en charge le information_schema.columns vue.

Voir 4 façons de vérifier le type de données d'une colonne dans MariaDB pour plus d'options.

SQL Server

SQL Server prend également en charge le information_schema.columns vue, mais il fournit également quelques autres options.

Une option rapide consiste à utiliser le sp_help procédure stockée :

EXEC sp_help Products;

Cela renvoie beaucoup d'informations sur la table spécifiée (dans ce cas, le Products tableau).

Voir 3 façons d'obtenir le type de données d'une colonne dans SQL Server (T-SQL) pour plus d'options et d'exemples.

PostgreSQL

Postgres prend également en charge le information_schema.columns vue, mais il y a aussi quelques autres options.

Si vous utilisez psql, vous pouvez utiliser le \d commande pour obtenir rapidement des informations sur les tables, les vues, les vues matérialisées, l'index, les séquences et les tables étrangères :

\d public.actor

Cela renvoie bien plus que le type de données d'une colonne spécifique, mais au moins c'est une option.

Voir 3 façons de vérifier le type de données d'une colonne dans PostgreSQL pour en savoir plus.

Oracle

Dans Oracle, nous pouvons utiliser le DESC commande :

DESC HR.COUNTRIES;

Cela obtient des informations sur les COUNTRIES table, détenue par HR .

Ou nous pourrions interroger le ALL_TAB_COLUMNS afficher :

SELECT 
    COLUMN_NAME,
    DATA_TYPE,
    DATA_LENGTH,
    DATA_PRECISION,
    DATA_SCALE
FROM ALL_TAB_COLUMNS
WHERE OWNER = 'HR'
AND TABLE_NAME = 'COUNTRIES';

Voir 3 façons de vérifier le type de données de colonne dans Oracle pour plus d'informations.