Article View: pl.comp.lang.php
Article #230485obsługa próby wstawienia duplikatu w kluczu unikalnym
From: Agn
Date: Sun, 20 Jul 2014 15:33
Date: Sun, 20 Jul 2014 15:33
13 lines
1608 bytes
1608 bytes
Mam w bazie MySQL tabelę, a w niej między innymi kolumny nrSeryjny i IDuzytkownika. Każdy użytkownik może tylko raz dodać dany nr seryjny, aby to zapewnić utworzony został klucz unikalny na te dwie kolumny. W jaki sposób w aplikacji (PHP, PDO) obsłużyć dodawanie nowego wiersza? 1. Sprawdzać zapytaniem SELECT, czy jest już wiersz o danym nr seryjnym i IDuzytkownika. Jeśli nie ma to wykonać zapytanie INSERT, jeśli jest to w aplikacji wyświetlić komunikat o próbie dodania duplikatu. 2. Od razu wykonać INSERT, jeśli się nie powiedzie sprawdzić informacje o błędzie. Jeśli będzie to błąd "Duplicate entry (...) for key 'nr_IDuzytkownik_UNIQUE' wyświetlić komunikat o próbie dodania duplikatu. Który sposób jest lepszy?
Technical Details
Message-ID:
<lqgng8$1qn$1@news.dialog.net.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!news.nask.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!news.nask.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail From: Agn <agn@agn.agn> Newsgroups: pl.comp.bazy-danych,pl.comp.lang.php Subject: obsługa próby wstawienia duplikatu w kluczu unikalnym Followup-To: pl.comp.bazy-danych Date: Sun, 20 Jul 2014 17:33:29 +0200 Organization: Dialog Net Lines: 13 Message-ID: <lqgng8$1qn$1@news.dialog.net.pl> NNTP-Posting-Host: dynamic-78-8-247-212.ssp.dialog.net.pl Mime-Version: 1.0 X-Trace: news.dialog.net.pl 1405870408 1879 78.8.247.212 (20 Jul 2014 15:33:28 GMT) X-Complaints-To: abuse@dialog.net.pl NNTP-Posting-Date: Sun, 20 Jul 2014 15:33:28 +0000 (UTC) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit