Tôi đang sử dụng SQLite cho một ứng dụng iPhone và tôi đang sử dụng một truy vấn như thế này:kí tự đặc biệt trong SQLite Query (trong iPhone)
NSString *query = [[NSString alloc] initWithFormat:@"INSERT INTO Courses (name, credits, web, tName, tSurname, tMail, tOffice) VALUES (\'%@\', \'%@\', \'%@\', \'%@\', \'%@\', \'%@\', \'%@\');", self.name, self.credits, self.web, self.tName, self.tSurname, self.tMail, self.tOffice];
Nó là một INSERT đơn giản, nhưng tôi từ Tây Ban Nha và tôi đang gặp một số vấn đề với dấu ngã. Nếu tôi làm điều gì đó như:
INSERT INTO Courses (name, credits, web, tName, tSurname, tMail, tOffice) VALUES ('test', 'test', 'test', 'test', 'test', 'test', 'test');", self.name, self.credits, self.web, self.tName, self.tSurname, self.tMail, self.tOffice];
Tất cả đều hoạt động hoàn hảo.
Sự cố xảy ra khi tôi chèn bằng hai hoặc nhiều từ có "ký tự đặc biệt" như ¿, ¡, `, ', ñ ... Và tôi không biết cách khắc phục: S Nếu truy vấn chỉ chứa một ký tự đặc biệt không có vấn đề gì.
Ví dụ:
Truy vấn này đang làm việc (vì chỉ có một "á"):
INSERT INTO Courses (name, credits, web, tName, tSurname, tMail, tOffice) VALUES ('Matemáticas', '1', '', 'Name', 'Surname', '[email protected]', '');", self.name, self.credits, self.web, self.tName, self.tSurname, self.tMail, self.tOffice];
Truy vấn này trả về cho tôi những lỗi "Lỗi: gần " ''": lỗi cú pháp "(vì có chữ 'O' và 'à'):
INSERT INTO Courses (name, credits, web, tName, tSurname, tMail, tOffice) VALUES ('Gestió', '1', '', 'à', 'Surname', '[email protected]', '');", self.name, self.credits, self.web, self.tName, self.tSurname, self.tMail, self.tOffice];
tôi cố gắng để đưa các từ giữa" và giữa 'và tôi nhận được như vậy.
Bất kỳ ý tưởng nào?
Xin chào, bạn có tìm thấy bất kỳ giải pháp vững chắc nào cho vấn đề này hay không, tôi đang chạy suốt ba ngày qua. –
chưa xin lỗi – llKoull