Dies scheint ein Gebiet mit einigen Mythen und widersprüchlichen Ansichten zu sein. Was ist der Unterschied zwischen einer Tabellenvariablen und einer lokalen temporären Tabelle in SQL
Verwendung temporärer Tabellenobjekte (keine Tabellenvariablen), einschließlich Semantik, Design, Leistungsoptimierung und Indizierung. Siehe auch [Tabellenvariable].
Dies scheint ein Gebiet mit einigen Mythen und widersprüchlichen Ansichten zu sein. Was ist der Unterschied zwischen einer Tabellenvariablen und einer lokalen temporären Tabelle in SQL
Ich habe mir den Artikel hier angesehen. Temporäre Tabellen im Vergleich zu Tabellenvariablen und ihre Auswirkungen auf die SQL Server-Leistung. In SQL Server 2008 konnten ähnliche Ergebnisse wie dort für 2005 erzielt werden. Wenn die gespeicherten Prozeduren (Definitionen unten) mit nur 10 Zeilen...
Wir betreiben eine Website (Moodle), die die Benutzer derzeit als langsam empfinden. Ich glaube, ich habe das Problem damit aufgespürt, dass MySQL temporäre Tabellen auf der Festplatte erstellt. Ich beobachte die Variable created_tmp_disk_tablesin der Mysql Workbench-Serververwaltung und die Anzahl...
Bei meiner Frau gibt es eine Debatte darüber, nur varchar(255)für alle varcharFelder in temporären Tabellen in gespeicherten Prozeduren zu verwenden. Grundsätzlich möchte ein Camp 255 verwenden, da dies auch dann immer funktioniert, wenn sich die Definition ändert, und das andere Camp möchte die...
Irgendwie wurde vor Jahrzehnten eine Tabelle in unserer Datenbank erstellt, die mit a beginnt #. Es wird im Objekt-Explorer unter der Datenbank der App angezeigt, nicht in tempdb. Aus irgendeinem Grund importiert Azure die Datenbank nicht wie folgt. Wir können es nicht löschen, umbenennen oder...
Ich benutze eine rekursive gespeicherte Prozedur in MySQL, um eine temporäre Tabelle mit dem Namen zu generieren id_list, aber ich muss die Ergebnisse dieser Prozedur in einer nachfolgenden Auswahlabfrage verwenden, damit ich DROPdie temporäre Tabelle in der Prozedur nicht verwenden kann ... BEGIN;...
Ich habe das folgende Problem in SQL Server 2005: Der Versuch, einige Zeilen in eine Tabellenvariable einzufügen, nimmt viel Zeit in Anspruch, verglichen mit derselben Einfügung mithilfe einer temporären Tabelle. Dies ist der Code, der in die Tabellenvariable eingefügt werden soll DECLARE @Data...
SQL Server speichert temporäre Tabellen zwischen, die in gespeicherten Prozeduren erstellt wurden, und benennt sie nur um, wenn die Prozedur endet und anschließend ausgeführt wird. Meine Frage hat damit zu tun, wann der Tempdb-Speicherplatz freigegeben wird. Ich habe gelesen, dass die Tabelle am...
Betrachten Sie das folgende einfache MCVE: SET STATISTICS IO, TIME OFF; USE tempdb; IF OBJECT_ID(N'tempdb..#t1', N'U') IS NOT NULL DROP TABLE #t1; CREATE TABLE #t1 ( r int NOT NULL ); IF OBJECT_ID(N'tempdb..##t1', N'U') IS NOT NULL DROP TABLE ##t1; CREATE TABLE ##t1 ( r int NOT NULL ); IF...
Ich habe eine gespeicherte Prozedur, die Werte in einer Tabellenvariablen speichert. Ich wähle diese Werte aus und gebe sie zurück, wenn die Prozedur aufgerufen wird. Ich versuche, diese Rückgabewerte in einer anderen Tabellenvariablen festzulegen, kann es aber nicht herausfinden. Gespeicherte...
Ich habe eine Frage zu einer Dokumentation zu temporären Tabellen, die ich kürzlich im TechNet gelesen habe . Der vierte Absatz des Abschnitts Temporäre Tabellen auf dieser Seite lautet wie folgt: Wenn eine temporäre Tabelle mit einer benannten Einschränkung erstellt wird und die temporäre Tabelle...
Auf einem Debian Linux-Server, auf dem viele PHP / MySQL-Websites (Fotogalerien) gehostet werden, habe ich manchmal "viele" Dateien wie /tmp/#sql_6405_58.MYD. Zum Beispiel heute: [2012-12-15 15:18:11] /tmp/#sql_6405_6.MYD : 88MB [2012-12-15 15:18:11] /tmp/#sql_6405_3.MYD : 22MB [2012-12-15...
Das Kernstück der Frage: Sind tatsächlich gespeicherte Prozeduren der einzige Mechanismus, der das Zwischenspeichern von temporären Tabellen implementiert, oder nutzen gespeicherte Systemprozeduren wie sp_executeSQL/ sp_executeauch diese? Ich bin kein DBA, bitte verwenden Sie kleine Wörter. Unsere...
Als ich einen Quickie-Prozess zusammenstellte, um beim Debuggen zu helfen, stieß ich auf einen Fehler im Compiler. create proc spFoo @param bit as begin if @param = 0 begin select * into #bar from [master].dbo.spt_values -- where number between ... end else begin select top 10 * into #bar from...
Ich habe gelesen, dass die abgeleiteten Tabellen eine bessere Leistung haben als temporäre Tabellen, aber trotzdem bevorzugen viele SQL Server-Entwickler die zweiten. Warum? Ich muss Abfragen mit großen Datenmengen (Millionen Datensätze) durchführen und möchte sicher sein, dass ich die beste Wahl...
Ich versuche derzeit, eine etwas problematische gespeicherte Prozedur zu optimieren, und ich habe festgestellt, dass der größte Teil der mit der Ausführung verbundenen Kosten durch das Parsen von XML in eine temporäre Tabelle entsteht. Hier ist die betreffende SQL: CREATE TABLE #ChangeSet (...
Für diesen speziellen Fall, den ich im Folgenden erläutern möchte, ist die Verwendung einer Tabellenvariablen besser als die Nichtverwendung einer Tabellenvariablen. Ich würde gerne wissen, warum und wenn möglich, die Tabellenvariable loswerden. Dies ist die Abfrage unter Verwendung der...
Eine Abfrage mit gespeicherten Prozeduren erhält manchmal einen schlechten Plan, nachdem die Statistiken für eine der Tabellen aktualisiert wurden, kann jedoch direkt danach wieder in den guten Plan kompiliert werden. Gleiche kompilierte Parameter. Das Problem scheint von einer kleinen temporären...
Ich muss umfangreiche statistische Analysen durchführen, um den Benutzern einige Daten zu liefern. Derzeit fange ich die Daten von MySQL ab und verarbeite sie überPHP Arrays. Temporäre MySQL-Tabellen sind jedoch viel besser (extrem effizienter und schneller als PHP-Arrays; offensichtlich aufgrund...
Ich verwende globale temporäre Tabellen für einfache Integrationstests meiner von SQL Server unterstützten Anwendung. Die Funktion min_active_rowversionscheint jedoch keine globalen temporären Tabellen zu enthalten, wie hier dargestellt: using (var connection = new SqlConnection("data...