Impact de l'isolation des transactions sur les verrous des instructions INSERT...SELECT
La question de savoir si une instruction INSERT INTO t2 SELECT * FROM t1; verrouille la table t1 lors de la sélection nécessite une analyse approfondie. Avant d'examiner le comportement des verrous dans GreatSQL, il est crucial de comprendre que les niveaux d'isolation des transactions influencent différemment l'application des verrous.
Configu ...
Publié le 15 juillet à 07h48
Requêtes avancées MySQL & mécanismes de transaction
Requêtes de base avec WHERE
Clause WHERE avec conditions avancées
SELECT id_employe, nom_employe, salaire, date_embauche FROM personnel_temp
WHERE departement = 10 AND (salaire+IFNULL(commission,0)*12)>=15000
AND DATEDIFF(NOW(),date_embauche)/365>=20;
Opérateurs utilisables dans WHERE
Opérateurs arithmétiques : + - * / %
Opérateurs ...
Publié le 10 juillet à 02h34
Bases de données : Vues, Déclencheurs, Transactions, Procédures stockées et Fonctions
Vues
Une vue est une table virtuelle, c'est-à-dire qu'elle n'existe pas physiquement dans la base de données. Essentiellement, une vue est une requête SQL nommée qui renvoie un ensemble de données dynamique. Les utilisateurs peuvent interagir avec une vue comme s'il s'agissait d'une table réelle.
L'utilisation des vues peut simplifier des requê ...
Publié le 7 juillet à 18h47
Optimisation MySQL : Techniques Essentielles pour des Performances Accrues
MySQL gère très bien les grands volumes de données, mais en général, plus les tables d'une base de données sont petites, plus les requêtes exécutées dessus sont rapides. Par conséquent, lors de la création de tables, pour de meilleures performances, nous pouvons définir la largeur des colonnes aussi petite que possible.
Par exemple, lors de la ...
Publié le 3 juillet à 08h12
Utilisation de SqlSugar : transactions, mises à jour partielles, requêtes multi-tables et pagination
Requêtes de base et pagination
var context = BaseDal.Db;
// Requête SQL brute
var result = await context.Ado.SqlQueryAsync<projet>("SELECT * FROM Projets WHERE Statut = @Statut", new { Statut = "Actif" });
// Requête LINQ Lambda
var projetAvecPlanning = await context.Queryable<projet planning="">((pr ...
Publié le 28 juin à 04h09
Les 6 situations où l'annotation @Transactional échoue dans Spring
Gestion des transactions
La gestion des transactions est fondamentale dans le développement d'applications. Spring propose des mécanismes robustes, principalement sous deux formes : la programmation manuelle et la déclaration via annotations.
La gestion programmatique implique un contrôle explicite des commits et rollbacks dans le code, ce qui ...
Publié le 27 juin à 17h30
Manuel de démarrage MySQL : requêtes, tables et transactions JDBC
Manipulation des bases de données
Afficher les bases existantes
SHOW DATABASES;
Points importants : Le langage SQL ne fait pas de distinction entre majuscules et minuscules, les instructions se terminent par un point-virgule anglais (;), et le mot-clé est DATABASES au pluriel.
Créer une base de données
CREATE DATABASE [IF NOT EXISTS] nom_base; ...
Publié le 26 juin à 00h10
Opérations Avancées avec SQL Server
Création de base de données
create database DonneesTest;
Connexion à la base de données
use BaseTest;
Création de tables
create table employe
(
idEmploye int primary key not null,
nomEmploye varchar(16) null,
genre nvarchar(2) CHECK(genre='Masculin' or genre='Féminin'),
poste varchar(16) null,
dateEmbauche datetime null, ...
Publié le 25 juin à 02h35
Gestion des Transactions, des Verrous et des Commandes dans Redis
Introduction aux Transactions
Les transactions dans Redis diffèrent de celles des bases de données relationnelles. Dans les systèmes comme MySQL, une transaction respecte les propriétés ACID : Atomicité, Cohérence, Isolation et Durabilité. De plus, MySQL utilise un contrôle de concurrence multi-version (MVCC) pour gérer ces propriétés.
Dans Red ...
Publié le 14 juin à 01h42
Opérations fondamentales avec le client Jedis pour Redis
Introduction à Jedis
Jedis constitue le client Java privilégié pour communiquer avec Redis. Cette bibliothèque offre une interface simple pour exécuter des opérations Redis à travers du code Java, alignant ses méthodes sur les commandes natives de Redis. Pour intégrer Jedis dans un projet Maven, ajoutez la dépendance suivante, en utilisant une ...
Publié le 1 juin à 21h37