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

Актуализация на SQLite

Резюме :в този урок ще научите как да използвате SQLite UPDATE изявление за актуализиране на данни за съществуващи редове в таблицата.

Въведение в SQLite UPDATE изявление

За да актуализирате съществуващи данни в таблица, използвате SQLite UPDATE изявление. Следното илюстрира синтаксиса на UPDATE изявление:

UPDATE table
SET column_1 = new_value_1,
    column_2 = new_value_2
WHERE
    search_condition 
ORDER column_or_expression
LIMIT row_count OFFSET offset;Code language: SQL (Structured Query Language) (sql)

В този синтаксис:

  • Първо посочете таблицата, където искате да актуализирате след UPDATE клауза.
  • Второ, задайте нова стойност за всяка колона на таблицата в SET клауза.
  • Трето, посочете редове за актуализиране, като използвате условие в WHERE клауза. WHERE клаузата е незадължителна. Ако го пропуснете, UPDATE оператор ще актуализира данните във всички редове на таблицата.
  • Накрая използвайте ORDER BY и LIMIT клаузи в UPDATE оператор, за да посочите броя на редовете за актуализиране.

Забележете, че ако използвате отрицателна стойност в LIMIT клауза, SQLite приема, че няма ограничение и актуализира всички редове, които отговарят на условието в предходния WHERE клауза.

ORDER BY Клаузата винаги трябва да върви с LIMIT клауза, за да посочите точно кои редове да бъдат актуализирани. В противен случай никога няма да разберете кой ред всъщност ще бъде актуализиран; защото без ORDER BY клауза, редът на редовете в таблицата не е посочен.

SQLite UPDATE примери за изрази

Ще използваме employees таблица в примерната база данни, за да демонстрира UPDATE изявление.

Следният SELECT изявлението получава частични данни от employees таблица:

SELECT
	employeeid,
	firstname,
	lastname,
	title,
	email
FROM
	employees;Code language: SQL (Structured Query Language) (sql)

Опитайте го

1) Актуализирайте пример за една колона

Да предположим, че Джейн се е омъжила и тя е искала да промени фамилното си име с фамилията на съпруга си, т.е. Smith . В този случай можете да актуализирате фамилното име на Джейн, като използвате следното изявление:

UPDATE employees
SET lastname = 'Smith'
WHERE employeeid = 3;Code language: SQL (Structured Query Language) (sql)

Опитайте го

Изразът в WHERE клаузата гарантира, че актуализираме само записа на Джейн. Задаваме lastname колона към литерален низ 'Smith' .

За да проверите UPDATE , използвате следното изявление:

SELECT
	employeeid,
	firstname,
	lastname,
	title,
	email
FROM
	employees
WHERE
	employeeid = 3;Code language: SQL (Structured Query Language) (sql)

Опитайте го

2) Пример за актуализиране на няколко колони

Да предположим, че Park Margaret намира в Toronto и искате да промените неговия адрес, град и информация за държавата. Можете да използвате UPDATE изявление за актуализиране на множество колони, както следва:

UPDATE employees
SET city = 'Toronto',
    state = 'ON',
    postalcode = 'M5P 2N7'
WHERE
    employeeid = 4;Code language: SQL (Structured Query Language) (sql)

Опитайте го

За да проверите UPDATE , използвате следното изявление:

SELECT
	employeeid,
	firstname,
	lastname,
	state,
	city,
	PostalCode
FROM
	employees
WHERE
	employeeid = 4;Code language: SQL (Structured Query Language) (sql)

Опитайте го

3) Актуализирайте с ORDER BY и LIMIT пример за клаузи

Забележете, че трябва да изградите SQLite с опция SQLITE_ENABLE_UPDATE_DELETE_LIMIT, за да извършите UPDATE изявление с незадължителен ORDER BY и LIMIT клаузи.

Нека проверим имейл адресите на служителите в employees таблица:

SELECT
	employeeid,
	firstname,
	lastname,
	email
FROM
	employees;Code language: SQL (Structured Query Language) (sql)

Опитайте го

За да актуализирате един ред в employees таблица, използвате LIMIT 1 клауза. За да сте сигурни, че актуализирате първия ред служители, сортирани по собствено име, добавяте ORDER BY firstname клауза.

Така че следното изявление актуализира имейла на Andrew Adams :

UPDATE employees
SET email = LOWER(
	firstname || "." || lastname || "@chinookcorp.com"
)
ORDER BY
	firstname
LIMIT 1;Code language: SQL (Structured Query Language) (sql)

Опитайте го

Новият имейл е комбинацията от собствено име, точка (.), фамилия и наставка @chinookcorp.com

LOWER() функция преобразува имейла в малки букви.

4) Пример за актуализиране на всички редове

За да актуализирате всички редове в employees таблица, пропускате WHERE клауза. Например следната UPDATE изявление променя всички имейл адреси на всички служители на малки букви:

UPDATE employees
SET email = LOWER(
	firstname || "." || lastname || "@chinookcorp.com"
);Code language: SQL (Structured Query Language) (sql)

Опитайте го

В този урок научихте как да използвате SQLite UPDATE изявление за актуализиране на съществуващи данни в таблица.

Препратки

  • https://www.sqlite.org/lang_update.html – Изявление за актуализиране на SQLite

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Библиотеката на стаята може ли да копира db от папката с активи?

  2. Експортирайте резултатите от SQLite заявка в CSV файл

  3. ПРИКАЧЕТЕ sqlite база данни в Android с SQLiteOpenHelper

  4. Създайте книга за контакти с Python, PyQt и SQLite

  5. Таблицата не се създава sqlite android