Zum Inhalt springen

kossy

Mitglieder
  • Gesamte Inhalte

    102
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von kossy

  1. Hallo ! Kann man pauschal sagen, dass ein INNER JOIN immer etwas langsamer ausgeführt wird, als ein EXISTS Operator? In habe nämlich den Anwendungsfall, dass eine DB Tabelle von mir sehr groß ist (fast 1 Million Datensätze) und wenn ich diese Tabelle mit anderen Tabellen joinen möchte, dauert meine Abfrage sehr sehr lange. Das ganze läuft allerdings deutlich schneller ab, wenn in alle anderen Tabellen zuerst joine und dann innerhalb eines EXISTS Operators die Tabelle mit den vielen vielen Datensätze einbauen und hier mittels der Where Klausel eine Verknüpfung zu den anderen deutlich geringer gefüllten Tabellen herstelle. Danke und Gruß
  2. Hallo nochmal, Kann mir vielleicht jemand von euch sagen, was genau dieses ui.item vom JQuery Framework im Detail ist? Ist das quasi eine Art Datenspeicher? Eine Art Datenbestand, der eben zur Laufzeit gefüllt und abgefragt werden kann? Grüße Kossy
  3. Danke für die Antwort ! Sehe ich das dann richtig, dass das JSON Objekt dann die Attribute jQuery, l10n, bindTestResult, createAutocomplete und createTest hat? Und das Objekt Var dann nur dass Attribut Test? Grüße Kossy
  4. Vielen Dank für die Antwort ! Eine Frage die sich mit dennoch stellt, wäre die folgende (hierbei geht es um Ajax und ich hoffe, dass das hier dennoch die korrekte Rubrik für mein Thema ist / bleibt?): Kann ein Ajax Request nur über die GET Methode erfolgen, oder bspw. auch über die POST Methode? Grüße Kossy
  5. Hallo zusammen ! ich habe hier gerade ein Stückchen JavaScript Quellcode vor mir und dabei sind mir noch ein paar Kleinigkeiten unklar. Hier der Code (es ist leider etwas mehr Codierung, ich hoffe aber, dass trotzdem jemand drüber lesen mag): Var.Test = { jQuery : {}, l10n : {}, bindTestResult : function(inputField, requestUrl, selectCallback) { var test = Var.Test.createTest(requestUrl, selectCallback); Var.Test.createAutocomplete(inputField, test); }, createAutocomplete : function(inputField, test) { Var.Test.jQuery(inputField).autocomplete(test).data( 'autocomplete')._renderItem = function(ul, item) { Var.Test.jQuery(inputField).removeClass( 'ui-autocomplete-loading'); return Var.Test.jQuery('<li></li>').data( 'item.autocomplete', item).append( '<a>' + item.output + '</a>').appendTo(ul); }; }, createTest: function(requestUrl, selectCallback){ var l10n = Var.Test.l10n; return { minLength : 1, source : function(request, response) { Var.Test.jQuery.ajax({ url : requestUrl, dataType : "jsonp", data : { param : request.term }, success : function(data) { if (data.errorCode == "complex_result") { response([ { output : l10n.tooMuchSuggestions, value : "INVALID" } ]); } else if (data.suggestions.length == 0) { response([ { output : l10n.noSuggestions, value : "INVALID" } ]); } else{ response(data.suggestions); } }, error : function(jqXHR, textStatus, errorThrown) { console.log(textStatus); } }); }, focus : function(event, ui) { if (ui.item.value != "INVALID") { Var.Test.jQuery(this).val(ui.item.output); return false; } else { Var.Test.jQuery(this).val(""); } }, select : function(event, ui) { if (ui.item.value == "INVALID") { Var.Test.jQuery(this).val(""); Var.Test.jQuery(this).blur(); return false; } else { Var.Test.jQuery(this).blur(); Var.Test.jQuery(this).val(ui.item.output); selectCallback(ui.item.value); return false; } } } } }; Was genau wird hier in diesem Fall mit Var.Test= ganz zu Beginn überhaupt erzeugt? Ist das ein Objekt mit den Attributen jQuery, l10n, bindTestResult, createAutocomplete und createTest ? Oder ist das so etwas wie ein Array mit den Feldern jQuery, l10n, bindTestResult, createAutocomplete und createTest ? Das hier ist ist übrigens die Stelle innerhalb meiner XHTML Seite, in der das Objekt ?, Array? oder was auch immer verwendet wird: <h:inputText style="width:100%;" id="testResult" value="#{refParam.XYZ}" onfocus="Var.Test.bindTestResult(this,'#{configuration.requestUrl}',methodXYZ)"> </h:inputText></td> Was wäre super, wenn mir vielleicht jemand kurz erläutern könnte, was genau das Resultat ist, welches hier zurückgeliefert wird? Danke und Gruß Kossy
  6. Hallo zusammen, ich hoffe, ich habe hier die richtige Rubrik für meine Frage erwischt. Meine Frage bzeiht sich auf den konkreten Unterschied zwischen einer GET- und einer POST Anfrage über das HTTP Protokoll. Ich weiß, dass die GET methode dazu verwendet wird, wenn kleinere Datenmengen transportiert werden, die Schnelligkeit im Vordergrund steht und die übermittelten Daten ruhig in der Browserzeile als Parameter lesbar sein sollen. Die Postmethod soll ja dann verwendet werden, wenn Daten nicht lesbar in der Browserzeile versendet werden sollen, Key Value Paare verschickt werden und eine komplette HTML Seite neu geladen werden sollen. Meine Frage ist jetzt die folgende: Wird die Post Methode nur eingesetzt, um eine Seite neu zu laden, oder hat sie auch noch andere Einsatzzwecke? Wird immer eine HTML Seite neu geladen, oder können damit auch nur gewisse teile neu geladen werden? Und wird mit der Get Methode immer nur ein kleiner teil einer Seite neu geladen? Oder kann damit u.U. auch eine ganze HTML Seite neu geladen werden? Danke für die Hilfe ! Grüße Kossy
  7. Hallo zusammen ! Nen Kollege von mir nutzt den MS SQL Server und erhält häufig die fehlermeldung, dass sein Transaktionsprotokoll voll sei. Was kann dafür die Ursache sein? Grüße Kossy
  8. Hallo ! Ich plane kei bestimmtes Vorhaben, ich wollte nur mal allgemein wissen, wie man so etas bewerkstelligen könnte. mfg Kossy
  9. Hallo nochmal ! Ich stehe gerade vor der Frage, wann genau eine korrelierte UNterabfrage in einem DBMS wirklich einen Sinn macht und wann man eher zu einer nicht korrelierten Unterabfrage greifen sollte, also eine Unterabfrage, die man für sich auch alleine ausführen könnte. Ich verstehe diese Grundsatzentscheidung ncoh nciht so ganz, wann wirklich mal die eine- oder die andere Unterabfragenart relevant sein könnte. Grüße Kossy
  10. Hallo zusammen ! Kann mir vielleicht jemand von euch sagen, wie ich in einem TSQL Cursor z.B. den 5 Datensatz meiner Ergebnismenge ansprechen kann, oder bspw. den letzten, oder den vorletzten? Ich habe bisher leider keine genaue Syntax gefunden, mit der ich das innerhalb eines Cursors bewerkstelligen könnte. Beste Grüße und Danke schön für die Antwort ! Kossy
  11. Hallo ! Ich habe mal eine Frage zum MS SQL Server. Wie kann ich einer Datenbanktabelle eine Spalte zuweisen, in der die Werte bspw. immer um eins inkrementiert werden, sobald ein neuer Datensatz / ein Tupel hinzugefügt wird? das bietet sich ja bei der Spalte, die den Primärschlüssel bildet, geradezu an. leider habe ich nirgends die Option gefunden, mit der man das einstellen kann. Kann mir da vielleicht jemand von euch weiterhelfen? Grüße Kossy
  12. Hallo ! Also ich schlußfolgere daraus, dass mein Vorhaben nicht gelingen wird. Ich würde aber trotzdem gerne nochmal explizit wissen wollen, ob ich damit nun richtig liege oder nicht? mfg Kossy
  13. Hi Dim ! Ich habe nochmal ne Frage. Unabhängig davon, wie ich nun mein geplantes Vorhaben codetechnisch umsetze, würde es mir trotzdem nochmal interessieren, ob es wirklich gar keine Möglichkeit in TSQL solche Abfragefenster mit Ja / Nein Schaltfläche zu realisieren? Also ich weiß, dass es in TSQL die Codestrukturen IF / ELSE, SWITCH, WHILE- und FOR-Schleife gibt. Aber habe ich eine Möglichkeit, irgendwie diese Codestrukturen auch für Benutzerinteraktionen zu verwenden (auch wenn das eigentlich Programmierung auf der Datenbankebene ist)? Oder sind solche Strukturen ausschließlich für die Datenverarbeitung mit Variablen im Hintergrund bzw. auf Datenbankebene zu verwenden? Danke für die Hilfe ! Grüße
  14. Hallo ! Ich habe nochmal eine Frage zu dem Thema Transaktionen in der Microsoftsprache TSQL. Transaktionen können ja mit "Begin Transaction" und "Commit Transaction" begonnen und abgeschlossen werden. Besteht aber evtl. auch die Möglichkeit Transaktionen explizit mit einem Namen oder einer ID zu versehen, durch den / die man die Transaktionen gezielt ansprechen kann, oder funktioniert so etwas in TSQL nicht? Ob das nun in der Praxis einen Sinn macht, sei erstmal davingestellt, es geht mir überwiegend erst einmal um theoretische Erkenntnisse. Besten Dank für die Unterstützung ! Viele Grüße Kossy
  15. Hi Dim ! Also da ich in C# und TSQL noch ein Neuling bin und nicht ganz sicher bin, ob ich Dich richtig verstanden habe, hier das ganze Vorhaben nochmal in einer Art Pseudocode: //Diese Funktion wird im Frontend bzw. in der Benutzeroberfläche der Anwendung ausgeführt FunktionNachButtonDrücken(){ Message.Show("Möchten Sie die SQl Anweisung tatsächlich ausführen?"); //Ja und Nein Schaltflächen werden jetzt angezeigt If (Ja wurde gedrückt){ Begin Transaction; //Insert SQL Statement wird jetzt an die Datenbank abgesetzt Message.Show("Möchte Sie die Transaktion endgültig festschreiben?"); //Ja und Nein Schaltflächen werden jetzt angezeigt If (Ja wurde gedrückt) Commit Transaction; Else Rollback Transaction Message.Show("Die Transaktion wurde wieder zurückgesetzt !"); } Ist das so halbwegs korrekt und ich kann direkt TSQL Befehle in die Benutzeroberfläche einbetten? Viele Grüße Kossy
  16. Hallo ! Danke schön für den Tipp, das werde ich mir mal näher ansehen. Was genau meinst Du mit BOL? Die Abkürzung ist mir leider nicht geläufig. Viele Grüße Kossy
  17. Hallo ! Ok, aber was mich noch nicht ganz klar ist, wie ich die Transaktion innerhalb der Anwendung "Comitten" kann, wenn ich eine serverseitige Stored Procedure mit TSQL ausführe, in der auch die Transaktion gestartet wird. Gibt es dafür vielleicht irgendwo ein Codebeispiel? Was das alles innerhalb einer serverseitigen Prozedur ausgeführt wird, dann ist es ja kein Problem, aber dann kann ich ja keine weitere Sicherheitsabfrage einbauen. Viele Grüße Kossy
  18. Danke schön für eure Beiträge ! Hm, also ich frage mich jetzt, wie ich das Programmtechnisch am besten umsetzen kann. Was genau gehört nun an Code (in meinem Fall C#) in die Benutzeroberfläche / Frontend und was genau gehört nun serverseitig in der Datenbank bzw. dem Backend implementiert (vor allem in Bezug auf den abzusetzenden SQL Befehl und die explizite Transaktion). Ich muss daher leider nochmal einmal nachhaken, wie genau kann ich das nun am besten und sinnvollsten umsetzen? Viele Grüße Kossy
  19. Hallo zusammen ! Ich habe mal eine weitere Frage an euch. Ich habe mich mal ein wenig mit TSQL beschäftigt und weiß, dass man dort explizit Transaktionen definieren kann und dass diese expliziten Transaktionen erst abgeschlossen sind, sobald man ein Commit setzt, ansonsten ist diese Transaktion noch offen und nicht beendet. Ich habe ich eigentlich irgendeine Möglichkeit auf Datenbankebene eine explizite Abfrage für meinen Benutzer zu bauen, die ihn fragt, ob er diese Transaktion wirklich mit einem Commit abschließen will, oder geht so etwas nur über eine Benutzeroberfläche? Vielleicht ein Beispiel: Eine in C# programmierte Benutzeroberfläche enthält einen Button. Wird dieser Button gedrückt, wird im Hintergrund eine Funktion aufgerufen, die auf der Datenbank ein INSERT oder DELETE ausführt. Es passiert nun folgendes: - Der Benutzer drückt den Button - Der Benutzer erhält die Sicherheitsabfrage, ob er den Befehl wirklich ausführen will (also quasi eine MessageBox die Ja und Nein Schaltfläche enthält) - Drückt der Benutzer auf Nein, dann passiert ncihts - Drückt der Benutzer auf Ja, so wird eine Stored Procedure in TSQL gestartet - Diese Funktion entählt ein Begin Transaction, dann den INSERT Befehl und dann ein Commit, um die Änderungen durch die Transaktion endgültig festzuschreiben Nun meine Frage: Gibt es irgendeine Möglichkeit, dieses Commit erst festzusetzen, wenn der Benutzer nochmal eine Sicherheitsabfrage mit Ja bestätigt, wie er das zuvor bereits beim Anstoßen der Prozedur getan hat? Ich kenne mich da noch nicht so gut in TSQL aus. Das wäre nämlich wünschesnwert, wenn der Benutzer doch noch merkt, dass er einen Fehler gemact hat und de Prozedur bereits läuft, er diese doch noch einmal rückgängig machen kann. Danke für eure Hilfe ! Viele Grüße Kossy
  20. Danke schön für die Antworten ! Ich werde mal versuchen,ob ich das direkt im Frontend umsetzen kann, die Datenbank direkt kam mir jetzt zuerst in den Sinn, weil ich dort die Benutzerkennung der User in Form einer Systemvariable über TSQL auslesen könnte. @dimitri Du hast natürlich recht mit Deiner Argumentation (streffin Du natürlich auch), ich werde das mal mit meinen Vorgesetzten abklären, ob das i.O. ist. Grüße
  21. Hallo ! Danke für die Antwort ! Wenn ich diese Dinge nicht mit einem Cursor bearbeiten kann, wie kann ich an die Daten herankommen, die ich mittels INSERT, UPDATE oder DELETE Anweisung in meiner Datenbank modifiziert habe? Mir fällt da nur die SQL Server internen Tabellen Insertedund deleted ein und dann evtl. mittels Trigger oder so. Ist das ein optimale Lösung, oder gibts bessere Dinge? Ich möchte diese Daten nochmal explizit auslesen und möglichst separat abspeichern, um so eine Art Backup zu erstellen. Grüße Kossy
  22. Hallo zusammen ! Ich habe bisher einige Beispiel mit dem Cursor in TSQL umgesetzt. Es handelte sich hierbei allerdings nur um SELECT Statements, deren zurückgegebene Werte in entsprechenden Variablen abgespeichert wurden. Kann man diese Cursortechnik eigentlich auch für INSERT, UPDATE und DELETE Befehle verwenden? Ich bin mir da nicht sicher. Hierbei geht es mir erstmal um theoretisches Wissen, egal wieviel Sinn das in der Praxis tatsächlich macht. Grüße Kossy

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...