SQL Server als B2B-Datenbank betreiben

VARCHAR / NVARCHAR

Wenn Microsoft SQL Server als B2B-Datenbank benutzt wird, muss in b2bbp-engine.xml folgender Parameter gesetzt werden: sendStringParametersAsUnicode=false. Zum Beispiel url=”jdbc:jtds:sqlserver://test.nli:1433/B2BP;sendStringParametersAsUnicode=false”. Sonst wird die Datenbank sehr inperformant sein.

Begründung: Wenn sendStringParametersAsUnicode (standardmäßig) auf true gesetzt ist, werden String Parameter als NVARCHAR übertragen. In den CREATE-Skripten wird VARCHAR benutzt. Das bedeutet, dass eine Konvertierung stattfinden muss, bevor Statements ausgeführt werden können. Aus diesem Grund kann ein QueryOptimizer unter Umständen keine Parameter Sniffen. Dies führt zu schlechten Ausführungsplänen.

Deadlocks

Bei Deadlock-Fehler lohnt sich ein Blick in unsere Lösungsdatenbank.

View Me   Edit Me