2015-03-23 16 views
5

Ich versuche, eine Tabelle in aws Redshift mit SQL Workbank erstellen. Ich bin in der Lage, die Rotverschiebung zu verbinden, aber während der Ausführung unten Skript, bekomme ich Verbindung abgebrochen Fehler. Bitte lassen Sie mich wissen, wenn jemand eine Lösung hat.SQL Workbench Fehler beim Verbinden mit Redshift

CREATE TABLE actual_report (
    type1 varchar(40), 
    Jj_calendar_Order_Month varchar(40), 
    Jj_Calendar_Order_Year varchar(40), 
    Product_major_Code_description varchar(40), 
    Product_minor_Code varchar(40), 
    Product_part_number varchar(40), 
    Product_Minor_Description varchar(40), 
    Order_Quantity decimal(20), 
    Order_Item_Unit_Price decimal(10,2), 
    country varchar(40)) 

ein Fehler aufgetreten ist, wenn der Befehl ausgeführt wird SQL: TABLE actual_report CREATE ( type1 VARCHAR (40), Jj_calendar_Order_Month VARCHAR (40), Jj_Calendar_Order_Year VARCHAR (40), Product_major_Code_descripti ...

Amazon Ungültige Operation: Die aktuelle Transaktion wird abgebrochen, Befehle werden bis zum Ende des Transaktionsblocks ignoriert; Ausführungszeit: 0.22s 1 Anweisung fehlgeschlagen.

+0

ein Semikolon nach der Anweisung * könnte * help Hinzufügen. – wildplasser

Antwort

0

Ich habe es. Unten Skript für mich ausgearbeitet. Ich habe nur entfernt (_).

CREATE TABLE actual_report ( type1 VARCHAR (40), JjcalendarOrderMonth VARCHAR (40), JjCalendarOrderYear VARCHAR (40), ProductmajorCodedescription VARCHAR (40), ProductminorCode VARCHAR (40), Productpartnumber VARCHAR (40), ProductMinorDescription varchar (40), OrderQuantity dezimal (20), OrderItemUnitPrice dezimal (10,2), Land varchar (40))

+0

Aber ich würde gerne wissen, warum unten Fehler kommt. Amazon] (500310) Ungültiger Vorgang: Die aktuelle Transaktion wird abgebrochen, Befehle werden bis zum Ende des Transaktionsblocks ignoriert. – user3858193

4

Sofern Sie eine explizit starten, jede Redshift Abfrage, die Sie machen, ist in einer Transaktion eingewickelt : http://docs.aws.amazon.com/redshift/latest/dg/r_BEGIN.html

Um dieses Problem zu beheben, wenn es erneut auftritt, geben Sie ROLLBACK; in einer Zeile ein und führen Sie es aus. Dies sollte Ihre Verbindung wieder in den Betriebszustand bringen.

15

Ich verwende SQL Workbench, und standardmäßig ist Autocommit deaktiviert. Ich führe den folgenden SQL-Befehl auf Autocommit einzuschalten, andernfalls wird die Transaktion nicht für die Datenbank festgeschrieben. Nur dass du weist.

SET autocommit ON 
+0

JA. Sie können auch den Befehl "ABORT;" oder "ROLLBACK" ausführen. Aber Autocommit ist so nützlich. –

+0

Danke. Es funktionierte. –

2

Setzen Sie Autocommit im SQL Workbench-Verbindungsfenster auf TRUE. Siehe beigefügtes Bild:

Set Autocommit to TRUE in SQL Workbench connection window

Verwandte Themen