Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Spezielle Fragen zum Import/Export von Kurs42 nach Schild-NRW

Moderator: wschrewe

Benutzeravatar
wschrewe
Fachberater*in
Beiträge: 1686
Registriert: Dienstag 25. September 2018, 17:36
Schulform: BK (Pensionär)
Kontaktdaten:

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von wschrewe »

jschaldach hat geschrieben: Dienstag 22. Juni 2021, 19:10und da war dann folgendes interessant: Als Schuljahre wurde mir ein Bereich von 1995/96 (?) bis 2000/01 angeboten, und es gab rechts keine Auswahl des Jahrgangs:
Haben Sie mal kontrolliert, ob in Schild-NRW unter "Verwaltung->Schule bearbeiten" Bezeichner für die Halbjahre eingetragen sind?
Mit freundlichen Grüßen
Walter Schrewe
"If all else fails, read the instructions" (Donald E. Knuth, letzter TeX - Hilfehinweis)
jschaldach
Beiträge: 12
Registriert: Dienstag 22. Juni 2021, 18:31
Schulform: Gymnasium

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von jschaldach »

Ja, unter "Kürzel für Abschnitte ist eingetragen "1. HJ" bzw. 2. HJ".
Genau diese Bezeichnungen tauchen dann auch überall auf, wo es um den aktuellen Abschnitt geht.

Wenn Sie möchten, kann ich mal die SQL-Abfragen, die bei der Erstellung einer neuen Blockung an die Schild-DB geschickt werden, direkt von der mysql-Kommandozeile absetzen und schauen, ob irgendwas nicht passt...
Benutzeravatar
wschrewe
Fachberater*in
Beiträge: 1686
Registriert: Dienstag 25. September 2018, 17:36
Schulform: BK (Pensionär)
Kontaktdaten:

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von wschrewe »

Ich habe einen neuen Snapshot hochgeladen.
Es handelt sich dabei um eine experimentelle Version: Alle SQL-Abfragen sind in die separate sqLite-DB KursQueries.s3db ausgelagert. Diese Datei wird im Programmverzeichnis von Kurs 42 erwartet. Damit können, falls Probleme mit der Groß/Kleinschreibung von Tabellen- und Feldnamen vermutet werden, die entsprechenden Abfragen verändert werden. Ich bin mir zwar relativ sicher, inzwischen alle Bezeichner an die korrekte Schreibweise angepasst zu haben, aber vielleicht hilft diese Möglichkeit ja, den Problemen auf die Spur zu kommen, die bei der Schild-Datenhaltung auf einem Linux-Server zu bestehen scheinen.
Mit freundlichen Grüßen
Walter Schrewe
"If all else fails, read the instructions" (Donald E. Knuth, letzter TeX - Hilfehinweis)
Benutzeravatar
wschrewe
Fachberater*in
Beiträge: 1686
Registriert: Dienstag 25. September 2018, 17:36
Schulform: BK (Pensionär)
Kontaktdaten:

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von wschrewe »

Einen Fehler habe ich noch gefunden: In der Abfrage sqlLoadEinstellungen ist muss "EinsTellungen" durch "Einstellungen" ersetzt werden.
Mit freundlichen Grüßen
Walter Schrewe
"If all else fails, read the instructions" (Donald E. Knuth, letzter TeX - Hilfehinweis)
jschaldach
Beiträge: 12
Registriert: Dienstag 22. Juni 2021, 18:31
Schulform: Gymnasium

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von jschaldach »

Das mit den "EinsTellungen" war unkritisch, die entsprechende Abfrage funktioniert trotzdem. Nicht funktioniert hat die Abfrage Nr 16 (sqlSchulen), da muss es "K_Schulen" heißen statt "k_schulen" - die Groß- und Kleinschreibung ist wohl bei den Spalten nicht so wichtig, aber bei den Tabellen. Allerdings funktionierte das Erstellen einer neuen Blockung auch nach der Korrektur nicht.

Was mir noch auffällt sind die Abfragen auf Tabellen der Art K42_***, die gibt es in unserer Schild-DB nicht. Sind das Interna von Kurs42? Ebensowenig gibt es die Tabelle DBS in der Schild-DB; ich habe sie aber in der schulver.mdb entdeckt. Offenbar gehen die Abfragen aus der sqLite-Sammlung nicht alle an die Schild-DB.

In dem Zusammenhang scheint mir die Tatsache nach wie vor wichtig, dass mir (wenn das entsprechende Fenster aufgeht) als Jahrgänge nur etwas aus den 90'er Jahren bzw. bis 2000/01 angeboten wird: Wo kommt diese Information denn eigentlich her? An der Stelle klemmt doch offenbar was...

Viele Grüße,
Jörg Schaldach
jschaldach
Beiträge: 12
Registriert: Dienstag 22. Juni 2021, 18:31
Schulform: Gymnasium

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von jschaldach »

Update März 2022:

Das Anlegen einer neuen Blockung in Verbindung mit unserer MySQL-Schild-DB (auf MariaDB) funktioniert immer noch nicht.
Nach dem Login in die Datenbank beginnnt offenbar eine SQL-Abfrage, die aber nicht endet. Fenster öffnen sich nicht. In allen anderen Belangen arbeitet Kurs mit der DB problemlos zusammen.

Hypothese:
Die Abfrage von Schlüsseltabellen, die nur bei der Erstellung einer neuen Blockung benötigt werden, scheitert wahrscheinlich an abweichender Schreibweise (Groß-/Kleinbuchstaben?) bei Tabellen- oder Spaltennamen. Würde man den reinen SQL-Code mal per CLI auf die DB schicken, ließe sich der Fehler wohl schnell finden.

Workaround:
Mit dem Migrationstool eine Access-DB erstellen und daraus die neue Blockung erzeugen. Kann ich mit leben, ist ja nur einmal im Jahr :-)
Ich habe das auch jetzt gemacht, also ist das Problem nicht dringend...

Freundliche Grüße,
Jörg Schaldach
Benutzeravatar
wschrewe
Fachberater*in
Beiträge: 1686
Registriert: Dienstag 25. September 2018, 17:36
Schulform: BK (Pensionär)
Kontaktdaten:

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von wschrewe »

jschaldach hat geschrieben: Montag 28. Juni 2021, 23:08Was mir noch auffällt sind die Abfragen auf Tabellen der Art K42_***, die gibt es in unserer Schild-DB nicht.
Diese Tabellen gibt es, wenn Sie als Format der Blockungsdatei "sqLite" gewählt haben. In der Version von Kurs 42, die Anfang März auf der MBS-Seite zur Verügung stand, war noch ein Bug beim Zugriff auf sqLite-Blockungen vorhanden. In der aktuellen Version, die auch aus anderen Gründen aktualisiert werden musste, ist dieser Bug behoben.

Es gibt kein grundsätzliches Problem beim Zugriff auf MariaDB. Ich habe es sicherheitshalber gerade noch einmal ausprobiert und problemlos eine neue Blockung anlegen und importieren können.
Mit freundlichen Grüßen
Walter Schrewe
"If all else fails, read the instructions" (Donald E. Knuth, letzter TeX - Hilfehinweis)
jschaldach
Beiträge: 12
Registriert: Dienstag 22. Juni 2021, 18:31
Schulform: Gymnasium

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von jschaldach »

Hallo Herr Schrewe,

ich habe hier nochmal ein bisschen probiert (aktuellste Version vom MSB, ihr aktueller Snapshot, Fomat Classic oder SqLite), aber die SQL-Abfrage für die Erstellung einer neuen Blockung läuft bei uns einfach nicht durch. Viel Zeit kann und will ich da nun nicht mehr reinstecken, der Workaround über die Access-DB ging ja und mein Kollege hat nun seine Blockungsdatei.

Vielen Dank, dass Sie sich das auch nochmal angesehen haben.

Freundliche Grüße,
Jörg Schaldach
Benutzeravatar
wschrewe
Fachberater*in
Beiträge: 1686
Registriert: Dienstag 25. September 2018, 17:36
Schulform: BK (Pensionär)
Kontaktdaten:

Re: Zugriffsverletzung beim Ersellen einer neuen Kursblockung

Beitrag von wschrewe »

jschaldach hat geschrieben: Mittwoch 23. März 2022, 20:55Das Anlegen einer neuen Blockung in Verbindung mit unserer MySQL-Schild-DB (auf MariaDB) funktioniert immer noch nicht.
Es könnte an dem installierten ODBC-Connector liegen. An einer anderen Schule, die auch mit MariaDB arbeitet, traten ähnliche Probleme auf. In einer längeren Teamviewer-Sitzung stellte sich heraus, dass der OBBC-Connector 5,1 verwendet wurde. Heute erhielt ich die Rückmeldung

"Ich habe mysql-connector-odbc-8.0.29 installiert. Damit funktionieren Blockungen problemlos. Andere Probleme scheinen auch nicht aufzutreten."

Möglicherweise lässt sich Ihr Problem damit ja auch lösen.
Mit freundlichen Grüßen
Walter Schrewe
"If all else fails, read the instructions" (Donald E. Knuth, letzter TeX - Hilfehinweis)
Antworten

Zurück zu „Import/Export“