Próbuję zaimportować plik do tabeli MySQL przy użyciu Sequel Pro.Jak zmienić łańcuch na datę podczas importowania za pomocą Sequel Pro?
Wiem, że muszę użyć STR_TO_DATE, ale nie mogę znaleźć właściwej składni.
Dostaję sporo tych błędów dla każdego wiersza:
[ERROR in row 1] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET date = STR_TO_DATE(@'11/1/11', '%m/%d/%Y');,'Amazon','USD')' at line 2
Oto co robię:
1 Plik> Importuj. Plik podchodzi i pole daty w formacie CSV jest wiersz 14:
2) Wybierz Data> Dodaj wyrażenie
3) W oknie Wyrażenie dodać ten kod :
$14, SET date = STR_TO_DATE(@$14, '%m/%d/%Y');
4) Pobierz ten wynik:
5) Get błąd powyżej. Jaka jest prawidłowa składnia?
Może to być pomocne, aby dać Ci pomysł na stole mam importujący:
CREATE TABLE `Amazon_copy4` (
`key` int(11) unsigned NOT NULL AUTO_INCREMENT,
`Title` varchar(255) DEFAULT NULL,
`Author` varchar(255) DEFAULT NULL,
`ASIN` varchar(255) DEFAULT NULL,
`Units Sold` int(11) DEFAULT NULL,
`Units Refunded` int(11) DEFAULT NULL,
`Net Units Sold or KU/KOLL Units**[1]` int(11) DEFAULT NULL,
`Royalty Type[2]` varchar(255) DEFAULT NULL,
`Transaction Type*[3]` varchar(255) DEFAULT NULL,
`Avg. List Price without VAT` decimal(19,2) DEFAULT NULL,
`Average File Size` float(5,2) DEFAULT NULL,
`Avg. Offer Price without VAT` varchar(255) DEFAULT NULL,
`Average Delivery Cost` varchar(255) DEFAULT NULL,
`Royalty` decimal(19,2) DEFAULT NULL,
`date` date DEFAULT NULL,
`country` varchar(255) DEFAULT NULL,
`currency` varchar(255) DEFAULT NULL,
PRIMARY KEY (`key`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
w komunikacie o błędzie, Amazon
i USD
są wartości dla pól, które następują datę (country
i currency
) w każdym rzędzie.
Z góry dziękuję!
Dzięki! Ale czy wiesz, jak to zrobić raz na stół, który ciągle obcinacie i ponownie przesyłasz? Kiedy to zrobię, to działa - ale kiedy obcię dane i zaktualizuję tabelę, moja data trafi z powrotem do varchar. Nawet nie zapisuje wyrażeń, gdy próbuję ponownie przesłać. – Ryan