2017-06-15 2 views
-2

bekomme ich folgende Fehler während dieser Abfrage in Mysql Ausführung:mysql.connector.errors.ProgrammingError: 1103 (42000)

'create table DDB_CHANGE_via_mailbox_iocb_modifier_0x1_device_id_0x2_state_0x23_tran_up_error_0x0_flags_0x884e0000 (s_no int primary key not null, time varchar(25) not null, component varchar(50) not null, message varchar(255) not null, complete_id int not null)' 

Fehler:

Traceback (most recent call last): File "", line 1, in File "C:\Python34\lib\site-packages\mysql\connector\cursor.py", line 559, in execute self._handle_result(self._connection.cmd_query(stmt)) File "C:\Python34\lib\site-packages\mysql\connector\connection.py", line 494, in cmd_query result = self._handle_result(self._send_cmd(ServerCmd.QUERY, query)) File "C:\Python34\lib\site-packages\mysql\connector\connection.py", line 396, in _handle_result raise errors.get_exception(packet) mysql.connector.errors.ProgrammingError: 1103 (42000): Incorrect table name 'DDB_CHANGE_via_mailbox_iocb_modifier_0x1_device_id_0x2_state_0x23_tran_up_error_0x0_flags_0x884e0000

'

Ich bin Verwenden von XAMpp lokalen Host mysql und Ausführen von Abfragen in Python mit mysql-Konnektor. Gibt ich ein Zeichen in den Tabellennamen ein, das nicht erlaubt ist? Ich habe irgendwo gelesen, dass das Einschließen des Tabellennamens in Backticks dieses Problem löst. Aber ich bekomme den gleichen Fehler, auch nachdem ich das getan habe.

Edit: Okay, anscheinend können Sie nicht einen Tabellennamen von mehr als 64 Zeichen haben, der das Problem in meinem Fall scheint. Gibt es einen Workaround dafür?

Antwort

0

Try this: -

create table 'DDB_CHANGE_via_mailbox_iocb_modifier_0x1_device_id_0x2_state_0x23_tran_up_error_0x0_flags_0x884e0000' ( 'S_NO' int Primärschlüssel nicht null, 'Zeit' varchar (25) nicht null, 'Komponente' varchar (50) nicht null ist, 'message' VARCHAR (255) nicht null, 'complete_id' int nicht null)

+0

'dbCursoe.execute (" create table 'DDB_CHANGE_via_mailbox_iocb_modifier_0x1_device_id_0x2_state_0x23_tran_up_error_0x0_flags_0x884e0000' ('S_NO' int Primärschlüssel nicht null, 'Zeit' VARCHAR (25) nicht null, 'Komponente' varcha r (50) nicht null, 'Nachricht' varchar (255) nicht null, 'complete_id' int nicht null) ") Das Ausführen dieser gibt den Fehler: _mysql.connector.errors.ProgrammingError: 1064 (42000): Sie haben ein Fehler in Ihrer SQL-Syntax_ – rishabh

+0

Auch hier, die Verwendung von Backtics (') anstelle von einfachen Anführungszeichen zur Eingabe des Tabellennamens gibt mir den gleichen Fehler wie meine Frage (falscher Tabellenname). Vielleicht verwende ich ein Zeichen in meinem Tabellennamen, das nicht erlaubt ist? – rishabh

Verwandte Themen