J'ai une procédure stockée qui contient la logique métier. À l'intérieur, j'ai environ 1609 variables (ne me demandez pas pourquoi, c'est ainsi que fonctionne le moteur). J'essaie SETune variable à la valeur concaténée de toutes les autres variables. Par conséquent, lors de la création, j'obtiens l'erreur: Msg 8631, niveau 17, …
J'avais l'impression que si je sommais DATALENGTH()tous les champs pour tous les enregistrements d'une table, j'obtiendrais la taille totale de la table. Suis-je trompé? SELECT SUM(DATALENGTH(Field1)) + SUM(DATALENGTH(Field2)) + SUM(DATALENGTH(Field3)) TotalSizeInBytes FROM SomeTable WHERE X, Y, and Z are true J'ai utilisé cette requête ci-dessous (que j'ai obtenue en ligne …
Nous voyons des types d'attente PAGELATCH_EX et PAGELATCH_SH très élevés ainsi que des attentes WRITELOG élevées. J'ai diagnostiqué la requête à l'origine des attentes PAGELATCH et je peux les éliminer en réduisant le taux d'insertion dans une clé primaire en cluster occupée définie avec une valeur IDENTITY. Je comprends que …
Lorsqu'un index est désactivé, la définition reste dans le catalogue système mais n'est plus utilisée. SQL Server ne gère pas l'index (car les données de la table changent) et l'index ne peut pas être utilisé pour satisfaire les requêtes. Si un index cluster est désactivé, la table entière devient inaccessible. …
Une question qui a surgi lors d'une discussion par clavardage: Je sais que le hachage rejoint les commutateurs de sauvetage en interne pour une sorte de boucle imbriquée. Que fait SQL Server pour un sauvetage d' agrégat de hachage (si cela peut arriver)?
Ma question est de savoir comment SQL Server gère une requête qui doit extraire plus de volume de données dans le cache de tampon qu'il n'y a d'espace disponible? Cette requête contiendrait plusieurs jointures, de sorte que le jeu de résultats n'existe pas déjà dans ce format sur le disque …
Même après avoir lu The Data Loading Performance Guide , je ne sais toujours pas s'il est nécessaire d'ajouter l'indicateur de table TABLOCK à une table temporaire vide, définie avec un index clusterisé afin d'obtenir une journalisation minimale. Évidemment, la table temporaire est créée dans TempDB qui fonctionne en mode …
Nous avons un SQL Server 2016 SP1 avec une mémoire maximale définie sur 24 Go. Ce serveur a un grand nombre de compilations, seulement 10% de ces compilations proviennent de requêtes ad hoc. Ainsi, les plans nouvellement compilés doivent être stockés dans le cache de plan mais la taille du …
Pour l' exemple de requête de base de données AdventureWorks ci-dessous: SELECT P.ProductID, CA.TransactionID FROM Production.Product AS P CROSS APPLY ( SELECT TOP (1) TH.TransactionID FROM Production.TransactionHistory AS TH WHERE TH.ProductID = P.ProductID ORDER BY TH.TransactionID DESC ) AS CA; Le plan d'exécution indique un coût de fonctionnement estimé à …
Je lis le livre d'Itzik «Interroger Microsoft SQL Server 2012» ainsi que lire / regarder différents documents éducatifs sur Internet. Mon intention est d'avoir une compréhension utile du fonctionnement des internes de la base de données. J'ai un petit doute que je n'ai pas pu résoudre sur les pages IAM. …
Ma requête de travail réelle était une jointure interne, mais cet exemple simple avec jointure croisée semble reproduire presque toujours le problème. SELECT * FROM ( SELECT 1 UNION ALL SELECT 2 ) AA ( A ) CROSS JOIN ( SELECT NEWID() TEST_ID ) BB ( B ) Avec ma …
Ceci est une question de base de données interne. J'utilise PostgreSQL 9.5, je me demande pourquoi Set Returning Functions (SRF), également connu sous le nom de Table Valued Functions (TVF) fonctionne plus lentement dans une FROMclause, par exemple lorsque j'exécute ces commandes, CREATE TABLE foo AS SELECT * FROM generate_series(1,1e7); …
J'ai besoin de créer une large table dénormalisée avec beaucoup de colonnes décimales (26,8) (moins de 1024 colonnes, la plupart des colonnes seraient nulles ou nulles). Je connais environ 8060 octets par limite de ligne, j'ai donc essayé de créer un tableau avec une compression de page. Le code ci-dessous …
Après avoir créé la base de données tpch dans mon SQL Server, j'ai essayé la requête ci-dessous: set statistics io on DBCC DROPCLEANBUFFERS; select top 100 * from dbo.lineitem order by l_partkey; La table lineitem a un index non clusterisé sur l_partkey. J'ai émis les requêtes ci-dessus plusieurs fois et …
Considérez la requête ci-dessous: CREATE PROC dbo.GetPage @orderid AS INT = 0, -- anchor sort key @pagesize AS BIGINT = 25 AS SELECT TOP (@pagesize) orderid, orderdate, custid, empid FROM dbo.Orders WHERE orderid > @orderid ORDER BY orderid; exec GetPage 25,25 SET STATISTICS IO pour la requête ci-dessus retournée: (25 …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.