Domande e risposte per i professionisti del database che desiderano migliorare le proprie competenze nel database e imparare dagli altri membri della comunità
Sono uno sviluppatore SQL (non DBA o Architect) per un'azienda SaaS di piccole dimensioni (~ 50 dipendenti). Ho il compito di capire come: Offload di report operativi dai nostri oltre 100 database OLTP Consentire l'esecuzione di tali report su dati provenienti da più database client Posiziona la nostra azienda in …
Prima di pubblicare un elemento di connessione relativo alla mancanza di documentazione in merito, qualcuno confermerà che non mi sto semplicemente perdendo qualcosa qui? Nella pagina dei documenti in cui formatè elencata come una funzione stringa: "Tutte le funzioni di stringa integrate sono deterministiche." - Funzioni stringa (Transact-SQL) Non si …
Stavo inserendo due set di dati, utilizzando la registrazione minima, in una tabella heap vuota utilizzando due attività Esegui SQL in esecuzione in parallelo e con SQL del seguente modulo. INSERT INTO Table (TABLOCK) SELECT FROM ... Dopo che il processo si è bloccato un po ', una delle attività …
In SQL Server 2012, avevo una serie di politiche per non consentire spazi nel nome di una tabella. Tuttavia, quando utilizzo lo stesso criterio in SQL Server 2016, viene visualizzato un errore. Ecco il codice per la condizione: DECLARE @condition_id INT EXEC msdb.dbo.sp_syspolicy_add_condition @name=N'No Spaces', @description=N'No spaces in table names.', …
Abbiamo eseguito una query di eliminazione su un database con 1,8 miliardi di righe. Questa eliminazione eliminerebbe 1,2 miliardi di righe. Con il senno di poi, avremmo suddiviso questa query in 100m alla volta, ma siamo in una posizione in cui è stata in esecuzione per 24 ore e il …
A volte vedo domande che chiedono come archiviare in modo sicuro le password degli utenti per un'applicazione Web (utilizzando un RDBMS, non sto parlando di Facebook o Twitter). La solita risposta è "salt la password, quindi l'hash con un algoritmo forte come TDES o SHA512". La mia domanda è: come …
Ogni volta che mi imbatto in questo tipo di query, mi chiedo sempre come funzionerebbe SQL Server. Se eseguo qualsiasi tipo di query che richiede un calcolo e quindi utilizzo quel valore in più posizioni, ad esempio in selecte il order by, SQL Server lo calcolerà due volte per ogni …
Ho due tabelle (insieme a un indice non cluster) che possono essere create con i comandi seguenti: CREATE TABLE GroupTable ( GroupKey int NOT NULL PRIMARY KEY, RecordCount int NOT NULL, GroupScore float NOT NULL ); CREATE TABLE RecordTable ( RecordKey varchar(10) NOT NULL, GroupKey int NOT NULL, PRIMARY KEY(RecordKey, …
Si è verificato un errore durante l'esecuzione del seguente script; IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE' AND TABLE_NAME='Table_Name') BEGIN CREATE TABLE Table_Name ( Field_Name_1 binary(32) NOT NULL CONSTRAINT PK_Name_Goes_Here PRIMARY KEY NONCLUSTERED , Field_Name_2 int NOT NULL , Field_Name_3 datetime NOT NULL INDEX IX_Name_Goes_Here CLUSTERED ) …
Stavo guardando un webinar di 7 anni fatto da Brent Ozar ( https://youtu.be/U_Kle3gKaHc ) e ho sentito parlare di diversi articoli raccomandati in quel momento. Utilità SQLDiag. SQLNexus. Strumento PAL. Consulenza / procedura guidata di ottimizzazione del database. BPA (Best Practices Analyzer). Gestione basata su criteri di SQL Server. Devono …
Faccio fatica a trovare tutta la documentazione su come SQL Server memorizza effettivamente una colonna calcolata non persistente. Prendi il seguente esempio: --SCHEMA CREATE TABLE dbo.Invoice ( InvoiceID INT IDENTITY(1, 1) PRIMARY KEY, CustomerID INT FOREIGN KEY REFERENCES dbo.Customer(CustomerID), InvoiceStatus NVARCHAR(50) NOT NULL, InvoiceStatusID AS CASE InvoiceStatus WHEN 'Sent' THEN …
La mia domanda è: in che modo SQL Server gestisce una query che deve estrarre più volume di dati nella cache del buffer di quanto sia disponibile spazio? Questa query conterrà più join, quindi il set di risultati non esiste già in questo formato sul disco e dovrebbe compilare i …
Uso i certificati tra database ( come spiegato da Erland Sommarskog ) per controllare l'accesso a un determinato database nel mio ambiente (SQL Server 2008 R2). Ho memorizzato le procedure nel database A che aggiorna le tabelle nel database B. Questo ha sempre funzionato per una varietà di procedure memorizzate …
Sto proponendo un ambiente di gestione temporanea del database al mio reparto IT. L'idea è che una persona non IT come me (analista di dati di lavori pubblici) avrebbe un posto dove testare le soluzioni e quindi implementarle da sole nell'ambiente live o chiedere all'IT di implementarle se necessario. Esistono …
Sto cercando di calcolare il totale parziale. Ma dovrebbe reimpostare quando la somma cumulativa è maggiore di un altro valore di colonna create table #reset_runn_total ( id int identity(1,1), val int, reset_val int, grp int ) insert into #reset_runn_total values (1,10,1), (8,12,1),(6,14,1),(5,10,1),(6,13,1),(3,11,1),(9,8,1),(10,12,1) SELECT Row_number()OVER(partition BY grp ORDER BY id)AS rn,* …
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.