SQLite
 sql >> база данни >  >> RDS >> SQLite

SQLite - Актуализиране на данни

UPDATE изразът може да се използва за актуализиране на данни в таблица.

WHERE клаузата може да се използва, за да се посочи точно кои редове трябва да бъдат актуализирани.

Можете да актуализирате всички редове, някои редове или нито един, в зависимост от условията за филтриране, приложени от WHERE клауза.

Проста актуализация

Ето една проста актуализация, която променя номера на изпълнителя 16 до Майките на изобретенията :

UPDATE Artists
SET ArtistName = 'Mothers of Invention'
WHERE ArtistId = 16;

И проверете актуализацията с бърз SELECT :

sqlite> SELECT * FROM Artists WHERE ArtistId = 16;
ArtistId              ArtistName                                          Bio       
--------------------  --------------------------------------------------  ----------
16                    Mothers of Invention                                          

Актуализиране на всички редове

Можете да актуализирате всички редове на таблица, просто като пропуснете WHERE клауза.

Нека опитаме:

UPDATE Artists
SET Bio = 'Australian jazz band centred around polyrhythms.';

И го проверете с SELECT изявление:

sqlite> SELECT ArtistName, Bio FROM Artists;	
ArtistName            Bio                                               
--------------------  --------------------------------------------------
Joe Satriani          Australian jazz band centred around polyrhythms.  
Steve Vai             Australian jazz band centred around polyrhythms.  
The Tea Party         Australian jazz band centred around polyrhythms.  
Noiseworks            Australian jazz band centred around polyrhythms.  
Wayne Jury            Australian jazz band centred around polyrhythms.  
Mr Percival           Australian jazz band centred around polyrhythms.  
Iron Maiden           Australian jazz band centred around polyrhythms.  
Atmasphere            Australian jazz band centred around polyrhythms.  
Ian Moss              Australian jazz band centred around polyrhythms.  
Magnum                Australian jazz band centred around polyrhythms.  
Strapping Young Lad   Australian jazz band centred around polyrhythms.  
Slayer                Australian jazz band centred around polyrhythms.  
Primus                Australian jazz band centred around polyrhythms.  
Pat Metheny           Australian jazz band centred around polyrhythms.  
Frank Gambale         Australian jazz band centred around polyrhythms.  
Mothers of Invention  Australian jazz band centred around polyrhythms.  
The Wiggles           Australian jazz band centred around polyrhythms.  

Опа! Не мисля, че всички тези групи са австралийски джаз групи, съсредоточени около полиритми.

Не се притеснявайте, можем да поправим това. Можем да зададем тази колона на NULL за всички артисти, за които тази биография не се отнася. В този случай биографията се отнася само за идентификатор на изпълнител 8 така че ще нулираме всички редове, където ArtistId не е равно на 8 .

UPDATE Artists
SET Bio = NULL
WHERE ArtistId <> 8;

И сега биографията се съхранява само срещу правилния изпълнител.

sqlite> SELECT ArtistName, Bio FROM Artists;
ArtistName            Bio                                               
--------------------  --------------------------------------------------
Joe Satriani                                                            
Steve Vai                                                               
The Tea Party                                                           
Noiseworks                                                              
Wayne Jury                                                              
Mr Percival                                                             
Iron Maiden                                                             
Atmasphere            Australian jazz band centred around polyrhythms.  
Ian Moss                                                                
Magnum                                                                  
Strapping Young Lad                                                     
Slayer                                                                  
Primus                                                                  
Pat Metheny                                                             
Frank Gambale                                                           
Mothers of Invention                                                    
The Wiggles                                                             

Внимавайте!

За нас е изключително удобно, че всички BIOS преди това съдържаха NULL стойности. Това означаваше, че можем просто да ги върнем на NULL и си тръгнете.

Това би било много по-сложно, ако другите изпълнители вече имаха пълна биография. Връщането им на NULL не връща стария им биос. Затова бъдете внимателни, когато актуализирате данните.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. запишете List<Model class> в sqlite

  2. Добра практика ли е да се използва ContentProvider за обработка на операции с база данни?

  3. SQLite UNION оператор

  4. Как да коригирам URL адреса на доставчика на съдържание, който не е намерен в доставчика на съдържание за Android?

  5. Извадете години от дата в SQLite