Syntaxisfout bij het laden van bestand

Ik voer uit: sqlite3 -in mydata.sql mydb met de volgende als de enige regel in mydata.sql:

DROP TABLE IF EXISTS [Album];

Ik krijg de volgende foutmelding:

Fout: in de buurt van regel 1: in de buurt van "DROP": syntaxisfout

Ik heb het invoerbestand tot vrijwel niets teruggebracht en ik krijg altijd deze syntaxisfoutmelding, ongeacht welk commando ik invoeg en altijd op regel 1. Het lijkt erop dat het denkt dat er een ongewoon karakter is, maar ik kan zien wat het zou kunnen zijn. Wat denk jij?

7
@tripleee Goed gesprek. Mijn SQL-script bevond zich in UTF-8 en er werden geen onverwachte niet-afdrukbare tekens weergegeven (zie het antwoord van hard), maar ik kreeg de foutmelding pas nadat ik de codering had gewijzigd in UTF-8 zonder de bytebestandsmarkering.
toegevoegd de auteur spaaarky21, de bron
Unicode stuklijst, toevallig?
toegevoegd de auteur tripleee, de bron
Hoe bewaar je het bestand? Wat is de codering?
toegevoegd de auteur Dave Newton, de bron

2 antwoord

Als u Notepad ++ of een andere vergelijkbare teksteditor gebruikt, schakelt u het weergeven van alle symbolen in.

In Notepad++, view->show symbol->Show All characters

Also check Encoding of this file (Menu->Encoding). You might want to forcefully change encoding to ANSI/UTF-8 (Menu->Encoding->Convert to ANSI).

5
toegevoegd

Ik had dezelfde fout met de Chinook -database en SQLite versie 3.19.3, dus ik opende het SQL-bestand ( Chinook_Sqlite_AutoIncrementPKs.sql ) met < code> Sublime Text en sla deze op als UTF-8 (om de stuklijstindicator te verwijderen).

1
toegevoegd