ptrckbnck / sqlchecker Goto Github PK
View Code? Open in Web Editor NEWSQLChecker hilft Studenten dabei Lösungen für die Aufgaben des Informatik Datenbanken Moduls der Goethe Universität FFM zu erstellen.
SQLChecker hilft Studenten dabei Lösungen für die Aufgaben des Informatik Datenbanken Moduls der Goethe Universität FFM zu erstellen.
It would be really nice to have some words about how to build this application
Es ist zwar kein Fehler in dem Sinne, aber gehört in jedes Programm finde ich:
Wenn ich das Programm schließe, wäre es schön, wenn ich gefragt werde, ob ich Nichtgespeichertes vorher speichern möchte.
Hi, 1.0.2 funktioniert nun mit Java JRE 11 auf Mac. Habe jedoch folgenden Error, wenn ich meinen SQL-Server damit verbinden möchte und eine Aufgabe ausführe.
`> 1a: SQL Code wird ausgeführt.
[ERROR] Wed Nov 07 14:32:23 CET 2018 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
[ERROR] Wed Nov 07 14:32:23 CET 2018 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
Query OK, 1 Spalten wurden verändert.
[ERROR] Wed Nov 07 14:32:23 CET 2018 WARN: Caught while disconnecting...
[ERROR]
[ERROR] EXCEPTION STACK TRACE:
[ERROR]
[ERROR]
[ERROR]
[ERROR] ** BEGIN NESTED EXCEPTION **
[ERROR]
[ERROR] javax.net.ssl.SSLException
[ERROR] MESSAGE: closing inbound before receiving peer's close_notify
[ERROR]
[ERROR] STACKTRACE:
[ERROR]
[ERROR] javax.net.ssl.SSLException: closing inbound before receiving peer's close_notify
[ERROR] at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:129)
[ERROR] at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117)
[ERROR] at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:308)
[ERROR] at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:264)
[ERROR] at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:255)
[ERROR] at java.base/sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:645)
[ERROR] at java.base/sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:624)
[ERROR] at com.mysql.cj.protocol.a.NativeProtocol.quit(NativeProtocol.java:1313)
[ERROR] at com.mysql.cj.NativeSession.quit(NativeSession.java:182)
[ERROR] at com.mysql.cj.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:1743)
[ERROR] at com.mysql.cj.jdbc.ConnectionImpl.close(ConnectionImpl.java:717)
[ERROR] at de.unifrankfurt.dbis.GUI.SQLRunner.call(SQLRunner.java:79)
[ERROR] at de.unifrankfurt.dbis.GUI.SQLRunner.call(SQLRunner.java:16)
[ERROR] at javafx.concurrent.Task$TaskCallable.call(Task.java:1425)
[ERROR] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[ERROR] at java.base/java.lang.Thread.run(Thread.java:834)
[ERROR]
[ERROR]
[ERROR] ** END NESTED EXCEPTION **
[ERROR]
[ERROR] `
Originally posted by @Fl4mer in #1 (comment)
Hallo Patrick,
ich konnte einen Fehler bezüglich des Reset-Skript Handlings nachvollziehen bzw. reproduzieren. Meine Schritte:
Nach dem Öffnen von SQLChecker habe ich meine Config File geladen, spart mir Doppeleingaben der Einstellungen.
Reset-Skript ausgewählt
Eine Aufgabe mit Datei-Öffnen geöffnet
Durch Schritt 3. wird das Reset-Skript nicht mehr erkannt. In den Einstellungen befindet sich aber noch der gültige Pfad des im Schritt 2. ausgewählten Reset-Skripts. Als Workaround wäre es hier zu empfehlen, zuerst das Aufgabenblatt und dann das Reset-Skript zu laden.
Liebe Grüße
Sascha
Hallo,
ich habe Java 10.0.2 mit SQLChecker 1.0 und
Java 11.01 mit SQLChecker 1.0.1 ausprobiert und bekomme bei beiden die gleiche Fehlermeldung:
Resette Datenbank.
[ERROR] com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.
[ERROR] Resetten der Datenbank fehlgeschlagen
[ERROR] SQLException (0): Could not create connection to database server.
Die Workbench funktioniert allerdings und hat Verbindung zum Server.
Ich benutzte Windows 10.
Was für Fehlerbehebungsmöglichkeiten gibt es?
The parser should support one line comments as well, currently after a --
at the start of a line no other code will be interpreted which leads to no lines being executed. Btw, why is a #
not supported as a one line comment marker?
Es scheint mir, dass im Menü "Ausführen" der Name "Vollständig Ausführen" doppelt auftaucht. Das 1. sollte vermutlich in "Datenbank Rücksetzten" geändert werden.
java.lang.IllegalStateException: showAndWait is not allowed during animation or layout processing
at javafx.scene.control.Dialog.showAndWait(Dialog.java:332)
at de.unifrankfurt.dbis.GUIApp.showError(GUIApp.java:29)
at com.sun.scenario.animation.shared.TimelineClipCore.visitKeyFrame(TimelineClipCore.java:241)
at com.sun.scenario.animation.shared.TimelineClipCore.playTo(TimelineClipCore.java:180)
at javafx.animation.Timeline.doPlayTo(Timeline.java:177)
at javafx.animation.AnimationAccessorImpl.playTo(AnimationAccessorImpl.java:39)
at com.sun.scenario.animation.shared.SingleLoopClipEnvelope.timePulse(SingleLoopClipEnvelope.java:99)
at javafx.animation.Animation.doTimePulse(Animation.java:1101)
at javafx.animation.Animation$1.lambda$timePulse$0(Animation.java:186)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at javafx.animation.Animation$1.timePulse(Animation.java:185)
at com.sun.scenario.animation.AbstractMasterTimer.timePulseImpl(AbstractMasterTimer.java:344)
at com.sun.scenario.animation.AbstractMasterTimer$MainLoop.run(AbstractMasterTimer.java:267)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:515)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:499)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulseFromQueue(QuantumToolkit.java:492)
at com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$11(QuantumToolkit.java:320)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$11(GtkApplication.java:277)
at java.base/java.lang.Thread.run(Thread.java:834)
Steps to reproduce:
Load the following sqlt file:
/*submission_name*/
Blatt4
/*1a*/
/* Kommentar zu Aufgabe 1a
ueber mehrere Zeilen */
...
/*1b*/
-- Kommentar zu Aufgabe 1b
...
/*2a*/
-- Kommentar zu Aufgabe 1c
...
/*2b*/
-- Kommentar
...
/*2c*/
-- Kommentar
...
/*2d*/
-- Kommentar
...
Copy following sql statement into 1b:
/*1b*/
/* Works with MariaDB 10.3, use union all to stuff two selects together without generating two output tables */
CREATE VIEW eddf_lira_24 AS
SELECT
ICAO_Code_Origin,
via,
Umsteigezeit,
DepartureDateAndTimeUTC,
Dauer
FROM
(
(
SELECT
src.ICAO_Code_Origin,
"DIREKTFLUG" AS via,
NULL AS ICAO_Code_Destination,
src.DepartureDateAndTimeUTC,
"0" AS Umsteigezeit,
TIMESTAMPDIFF(MINUTE,DepartureDateAndTimeUTC,ArivalDateAndTimeUTC) AS Dauer
FROM
(
SELECT
*,
TIMESTAMPADD(MINUTE,FlightDurationInMinutes,DepartureDateAndTimeUTC) AS ArivalDateAndTimeUTC
FROM flightexecution
) AS src
WHERE
(
src.ICAO_Code_Origin = "EDDF" AND
src.ICAO_Code_Destination = "LIRA"
)
)
UNION ALL
(
SELECT
src.ICAO_Code_Origin AS ICAO_Code_Origin,
dst.ICAO_Code_Origin AS via,
dst.ICAO_Code_Destination,
src.DepartureDateAndTimeUTC AS DepartureDateAndTimeUTC,
TIMESTAMPDIFF(MINUTE,src.ArivalDateAndTimeUTC,dst.DepartureDateAndTimeUTC) AS Umsteigezeit,
TIMESTAMPDIFF(MINUTE,src.DepartureDateAndTimeUTC,dst.ArivalDateAndTimeUTC) AS Dauer
FROM
(
SELECT
*,
TIMESTAMPADD(MINUTE,FlightDurationInMinutes,DepartureDateAndTimeUTC) AS ArivalDateAndTimeUTC
FROM flightexecution
) AS src
INNER JOIN
(
SELECT
*,
TIMESTAMPADD(MINUTE,FlightDurationInMinutes,DepartureDateAndTimeUTC) AS ArivalDateAndTimeUTC
FROM flightexecution
) AS dst ON
src.ICAO_Code_Destination = dst.ICAO_Code_Origin AND
TIMESTAMPDIFF(MICROSECOND,src.ArivalDateAndTimeUTC,dst.DepartureDateAndTimeUTC) > 0
WHERE
(
src.ICAO_Code_Origin = "EDDF" AND
dst.ICAO_Code_Destination = "LIRA"
)
)
) AS a
ORDER BY Dauer;
and the error is displayed.
And yes, I know, that this SQL-Statement is:
a) imperformant as hell
b) for some reason only works on newer versions of mariadb
c) look ugly
But it meets the requirements of only one statement per task and works. If it looks stupid but it works it ain't stupid, right?
There is a little bug with the email of the code buddy.
In the created .txt the email of the buddy isn't set but your own email is shown two times.
Regards,
Tobi
See Bug-Report Bug-Report
An error while parsing the sql-code created an infinite recursion resulting in the described exception.
Will be fixed in next release.
Guten Tag,
ich als Mac User habe die neuste Version von Java runtergeladen Java 11 und beim Starten des Programms über das Terminal, kriege ich folgende Fehlermeldung. Da ich mich nicht gar nicht mit Java auskenne, wäre ich froh über eine mögliche Lösung dieses Problems. Laut de Fehlermeldung scheint es Grafikprobleme zu geben. Müssen womöglich zusätzlich libaries installiert werden?
Graphics Device initialization failed for : es2, sw
Error initializing QuantumRenderer: no suitable pipeline found
java.lang.RuntimeException: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
at com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(QuantumRenderer.java:280)
at com.sun.javafx.tk.quantum.QuantumToolkit.init(QuantumToolkit.java:222)
at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:260)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:267)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158)
at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658)
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:94)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:124)
... 1 more
Exception in thread "main" java.lang.RuntimeException: No toolkit found
at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:272)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:267)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158)
at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658)
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195)
at java.base/java.lang.Thread.run(Thread.java:834)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.