Grüssi
war ja schon lange nicht mehr da....
ich habe meine Anwendung mal soweit fertig geschrieben
auf SQL-Server umgestellt und 2 SPs rausgebracht
durch den SQL-Server haben wir ja nun auch die möglichkeit übers internet auf die datenbank zuzugreifen, es wird zwar kein hauptaufgabengebiet meiner Anwendung werden (in nächster zeit zumindest), allerdings für kleine kunden sollte es die möglichkeit geben wenn die es unbedingt wollen
da meine Anwendung übers internet aber schon ein wenig zäh ist, habe ich mich mal in den SQL Server Profiler reingeschmissen und mal ein bisschen herumgeguckt
und da ist mir aufgefallen, das in der Spalte Duration fast überall 0 steht nur einen brocken habe ich drinn der eigentlich lange dauert
ich arbeite mit Temp_Tabellen, d.h.
ich habe eine Tabelle, nennen wir diese LUT_BTe_Files, da sind die Dateien zu den Bauteilen (Produktionsbetrieb hat meistens Bauteil Büro und Bauteil Produktion) gespeichert
wenn ich jetzt dieses Bauteil bearbeite, und die Dateienliste verändere (eine hinzufüge) wird diese ja sofort eingetragen und wenn man auf abbrechen drückt, interessiert das dann keinen
deswegen lade ich alle datensätze dieser tabelle in die absolut idente Temp_LUT_BTe_Files
da ich, wenn ich ein feld zu dieser tabelle hinzufüge, nicht den gesamten programmcode durchsuchen will, wo ich das überall lade, mache ich das dynamisch in dem ich mit
m_cmd.CommandText = "sp_Columns"
m_cmd.CommandType = CommandType.StoredProcedure
m_cmd.Parameters.AddWithValue("@table_name", m_TableName)
m_cmd.Parameters.AddWithValue("@table_owner", Owner)
da.SelectCommand = m_cmd
da.Fill(dt) die liste der felder hole und zu
"INSERT INTO
Temp_LUT_BTe_Files
(LfdNr_BTe_Files, LUT_LfdNr_BTe, LUT_Title, LUT_File, LUT_Date)
SELECT
LUT_BTe_Files.LfdNr_BTe_Files, LUT_BTe_Files.LUT_LfdNr_BTe, _
LUT_BTe_Files.LUT_Title, LUT_BTe_Files.LUT_File, LUT_BTe_Files.LUT_Date
FROM
LUT_BTe_Files
WHERE
LUT_LfdNr_BTe = 9" umbaue
dieser vorgang benötigt laut SQL-Profiler 4 Befehle die eigentlich lange dauern und ich als client infos bekommen, mit denen ich eigentlich nichts mache ausser wieder zum server zurückzuschicken
kann man diesen vorgang irgendwie in Stored Procedures aus(ein)lagern?
wie man SP schreibt ist mir grundsätzlich klar, allerdings habe ich mit dem zusammenbauen des INSERT INTO Befehles in einer schleife ein problem, wo ich nicht weis ob das überhaupt geht 0 |