Podczas zapisu danych do bazy danych otrzymuję błąd. Skąd mogę pobrać kompletną listę błędów?
Podczas zapisu danych do bazy danych otrzymuję błąd. Skąd mogę pobrać kompletną listę błędów?
Listę możliwych błędów można pobrać z tabeli systemowej sysmessages:
SELECT * FROM master.dbo.sysmessages
Szczegółowy opis znaczenia poszczególnych kolumn jest tutaj:
http://msdn.microsoft.com/en-us/library/ms187382.aspx
Opis błędów można również znaleźć w dokumentacji na MSDN:
http://msdn.microsoft.com/en-us/library/cc645603.aspx
Przykład obsługi błędów w przypadku C# i Entity Framework:
try { context.SaveChanges(); } catch (DbUpdateException dbUpdateException) { var sqlException = dbUpdateException.GetBaseException() as SqlException; if (sqlException != null) { // Foreign Key violation switch (sqlException.Number) { case 547: // Foreign Key violation throw new InvalidOperationException("Some helpful description", ex); break; case 2601: // Primary key violation throw new DuplicateRecordException("Some other helpful description", ex); break; default : throw sqlException; break; } } else { throw dbUpdateException; } }