Mysql
 sql >> Base de données >  >> RDS >> Mysql

Insérer une requête pour insérer des lignes dans MySQL

Ce didacticiel fait partie de la série Apprendre les requêtes SQL de base à l'aide de MySQL. Dans ce tutoriel, nous aborderons les requêtes SQL pour insérer des lignes ou stocker des données dans une table dans MySQL.

Insérer dans la requête

La requête INSERT INTO peut être utilisée pour insérer des lignes dans une table. Si vous êtes connecté à distance à la base de données, vous aurez également besoin du privilège INSERT pour la table afin d'insérer des lignes dans une table.

# INSERT INTO - Syntax
INSERT INTO `table_name`(column_1,column_2,...) VALUES (value_1,value_2,...);

Explication de la requête

La commande MySQL INSERT INTO peut être utilisé pour insérer des lignes dans le nom de table donné où le nom de la table est obligatoire.

Nous pouvons spécifier les noms de colonne dans le format séparé par des virgules si les données de ligne sont spécifiées uniquement pour les colonnes sélectionnées. Dans le cas où les données de ligne sont fournies pour toutes les colonnes du tableau dans l'ordre des colonnes, nous pouvons omettre de spécifier les colonnes.

Nous pouvons soit fournir la ligne données de toutes les colonnes ou des colonnes sélectionnées comme spécifié ci-dessus. Nous devons prendre soin du type de données lors de l'insertion des données de ligne. Les types de données couramment utilisés sont répertoriés ci-dessous :

Chaîne - Nous devons mettre toutes les valeurs de chaîne entre guillemets simples. Nous pouvons également utiliser NULL, si la définition de colonne le permet.

Numérique - Les valeurs numériques ne doivent pas être entre guillemets. Les valeurs numériques doivent être fournies directement en fonction du type de données de la colonne.

Date - Les valeurs de date doivent être placées entre guillemets simples selon le format MySQL, c'est-à-dire 'AAAA-MM-JJ'. Nous pouvons utiliser tous les zéros comme valeur par défaut ou NULL si la définition de colonne autorise les valeurs nulles.

Dateheure - Semblable aux valeurs de données, le datetime la valeur doit être entourée de guillemets simples en suivant le format MySQL, c'est-à-dire 'YYYY-MM-DD hh:mm:ss '.

Vous pouvez également suivre la feuille de triche des types de données MySQL pour en savoir plus sur les types de données disponibles dans MySQL.

Exemples

Cette section fournit des exemples de requête d'insertion pour insérer des données de ligne dans une table. Utilisez la requête mentionnée ci-dessous pour créer la table utilisateur contenant les colonnes id, first name et last name pour stocker les données utilisateur.

# Create the User Table
CREATE TABLE `user` (
`user_id` bigint(20) NOT NULL,
`first_name` varchar(45),
`last_name` varchar(45)
);

Les requêtes mentionnées ci-dessous peuvent être utilisées pour insérer des données dans la table utilisateur en utilisant les noms de colonne.

# Insert Single Row - All Columns
INSERT INTO `user` ( `user_id`, `first_name`, `last_name`) VALUES ( 1, 'John', 'Smith' );

# Insert Multiple Rows - All Columns
INSERT INTO `user` ( `user_id`, `first_name`, `last_name`) VALUES
( 2, 'Rick', 'Jones' ),
( 3, 'Catherine', 'Ponting' ),
( 4, 'Harsh', 'Upadhyay' ),
( 5, 'Tajwinder', 'Singh' );

# Insert Single Row - Selected Columns - NULL for last_name
INSERT INTO `user` ( `user_id`, `first_name`) VALUES ( 6, 'Leo' );

Ces requêtes insèrent 6 lignes dans le tableau ayant l'identifiant, le prénom et le nom pour représenter 6 utilisateurs différents.

Nous pouvons également omettre les noms de colonne au cas où nous fournirions les données de toutes les colonnes comme indiqué ci-dessous. Nous devons prendre soin de l'ordre des colonnes lors de l'insertion de lignes sans spécifier les colonnes.

# Insert Single Row - All Columns
INSERT INTO `user` VALUES ( 7, 'Leo', 'Murphy' );

# Insert Multiple Rows - All Columns
INSERT INTO `user` VALUES
( 8, 'Ram', 'Choudhary' ),
( 9, 'Nicole', NULL );

Nous pouvons également modifier l'ordre des colonnes lors de l'insertion des valeurs de ligne. La seule chose à prendre en compte est que les données de ligne doivent également suivre le même ordre que celui indiqué ci-dessous.

# Insert Single Row - All Columns
INSERT INTO `user` ( `first_name`, `last_name`, `user_id` ) VALUES ( 'Bill', 'Waugh', 10 );

C'est ainsi que nous pouvons utiliser la commande INSERT INTO pour insérer des données dans une table.