Gibt es eine Möglichkeit, ein Erstellungsskript ausschließlich in T-SQL aus einer vorhandenen Tabelle zu generieren (dh ohne Verwendung von SMO, da T-SQL keinen Zugriff auf SMO hat)? Angenommen, eine gespeicherte Prozedur empfängt einen Tabellennamen und gibt eine Zeichenfolge zurück, die das Erstellungsskript für die angegebene Tabelle enthält. Lassen Sie mich …
Haftungsausschluss: Bitte nehmen Sie mich als jemanden mit, der nur einen winzigen Teil seiner Arbeitszeit mit Datenbanken verbringt. (Die meiste Zeit mache ich C ++ - Programmierung in meinem Job, aber jeden ungeraden Monat muss ich etwas in einer Oracle-Datenbank suchen / reparieren / hinzufügen.) Ich musste wiederholt komplexe SQL-Abfragen …
Ich habe die folgende gespeicherte Prozedur erstellt: ALTER PROCEDURE usp_actorBirthdays (@nameString nvarchar(100), @actorgender nvarchar(100)) AS SELECT ActorDOB, ActorName FROM tblActor WHERE ActorName LIKE '%' + @nameString + '%' AND ActorGender = @actorgender Jetzt habe ich versucht, so etwas zu tun. Vielleicht mache ich das falsch, aber ich möchte sicher sein, …
Wie würde ich bei zwei Tabellen mit einer undefinierten Zeilenanzahl mit einem Namen und einem Wert eine Pivot- CROSS JOINFunktion über ihren Werten anzeigen? CREATE TEMP TABLE foo AS SELECT x::text AS name, x::int FROM generate_series(1,10) AS t(x); CREATE TEMP TABLE bar AS SELECT x::text AS name, x::int FROM generate_series(1,5) …
Ich schreibe eine dynamische SQL zum Löschen und Erstellen von Ansichten in verschiedenen Datenbanken. Also schrieb ich: set @CreateViewStatement = ' USE ['+ @DB +']; CREATE VIEW [dbo].[MyTable] AS SELECT ........something exec (@CreateViewStatement) Es gibt mir Fehler: 'CREATE VIEW' muss die erste Anweisung in einem Abfragebatch sein. Wenn ich die …
Ich muss eine Reihe von Änderungen vornehmen und dokumentieren foo.sql Abfragen , die von einem Team des technischen Supports von DB geteilt werden (für Kundenkonfigurationen und ähnliches). Es gibt Arten von Tickets, bei denen jeder Kunde seine eigenen Server und Datenbanken hat, ansonsten ist das Schema auf der ganzen Linie …
Ich habe gehört, dass Sie Dynamic SQL nicht verwenden möchten. Können Sie ein konkretes oder reales Beispiel geben? Persönlich codiere ich es einige Male in meiner Datenbank. Ich denke, es ist in Ordnung, weil es Flexibilität ist. Meine Vermutung bezieht sich auf SQL Injection oder Performance. Noch etwas?
Ich habe Probleme beim Versuch, den Kontext von SSMS dynamisch in die in dynamischem SQL angegebene Datenbank zu ändern: EXEC sys.sp_executesql N'USE db1 ' ; Es wird erfolgreich ausgeführt, der Datenbankkontext von SSMS ändert sich jedoch nicht. Ich habe versucht, eine geringfügige Änderung an den oben genannten so DECLARE @sql …
Ich betrachte eine Anwendung, die hochdynamische SQL-Abfragen für SQL Server verwendet. Wenn ich mir die Abfragen ansehe, die auf sehr seltsame und komplizierte Weise aufgebaut sind, aber das ist eine andere Geschichte, erzähle ich sie, um einen guten Grund dafür zu nennen, dass ich nicht in der Lage (zu dumm) …
Kurze Hintergrundgeschichte: Wir arbeiten mit einem externen Anbieter zusammen, der über ein Umfragesystem verfügt. Das System ist nicht unbedingt das Beste, wenn Sie eine neue Umfrage erstellen und das System eine neue Tabelle erstellt, dh: Tables ____ Library_1 -- table for Survey 1 SurveyId int InstanceId int Q_1 varchar(50) Library_2 …
Ich habe eine Tabelle (nicht von mir entworfen) mit 20 variabel benannten Spalten. Das heißt, je nachdem, welche Art von Datensatz Sie betrachten, kann sich der zutreffende Name der Spalte ändern. Die möglichen Spaltennamen werden in einer anderen Tabelle gespeichert, die ich sehr einfach abfragen kann. Daher lautet die Abfrage, …
Ich versuche, eine gespeicherte Prozedur einzuchecken, wenn eine Tabelle in meiner Zieldatenbank vorhanden ist. Wenn dies nicht der Fall ist, erstelle ich die Tabelle unter Verwendung der Tabellen information_schema aus der Quellendatenbank. Wenn ich jedoch sp_execute verwende, um zu versuchen, die Tabelle wiederherzustellen, erhalte ich den Fehler. Die Prozedur erwartet …
Ich habe dynamisches SQL für viele Aufgaben verwendet und bin ständig auf dasselbe Problem gestoßen: Drucken von Werten von Variablen, die in der dynamischen T-SQL-Anweisung verwendet werden. Z.B: Declare @SQL nvarchar(max), @Params nvarchar(max), @DebugMode bit, @Foobar int select @DebugMode=1,@Foobar=364556423 set @SQL='Select @Foobar' set @Params=N'@Foobar int' if @DebugMode=1 print @SQL exec …
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 Anwendung sendet über vorbereitete Anweisungen , die vom Profiler, ich laufe sehen Sie alle …
Ich habe einen Prozess, bei dem verschiedene Befehle zwischen mehreren Datenbanken ausgeführt werden. Wenn ich jedoch dynamisches SQL verwende, um die Datenbank mit 'use @var' zu ändern, ändert sich die Datenbank nicht wirklich. Ausführen in [test_db]: declare @currentDB varchar(max) declare @sql varchar(max) set @currentDB = DB_NAME() set @sql = 'use …
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.