SQLite
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> SQLite

Cập nhật SQLite

Tóm tắt :trong hướng dẫn này, bạn sẽ học cách sử dụng SQLite UPDATE để cập nhật dữ liệu của các hàng hiện có trong bảng.

Giới thiệu về SQLite UPDATE tuyên bố

Để cập nhật dữ liệu hiện có trong bảng, bạn sử dụng SQLite UPDATE tuyên bố. Phần sau minh họa cú pháp của UPDATE tuyên bố:

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)

Trong cú pháp này:

  • Đầu tiên, hãy chỉ định bảng mà bạn muốn cập nhật sau UPDATE mệnh đề.
  • Thứ hai, đặt giá trị mới cho mỗi cột của bảng trong SET mệnh đề.
  • Thứ ba, chỉ định các hàng để cập nhật bằng cách sử dụng một điều kiện trong WHERE mệnh đề. WHERE mệnh đề là tùy chọn. Nếu bạn bỏ qua, UPDATE câu lệnh sẽ cập nhật dữ liệu trong tất cả các hàng của bảng.
  • Cuối cùng, sử dụng ORDER BYLIMIT mệnh đề trong UPDATE để chỉ định số hàng cần cập nhật.

Lưu ý rằng nếu sử dụng giá trị âm trong LIMIT mệnh đề, SQLite giả định rằng không có giới hạn và cập nhật tất cả các hàng đáp ứng điều kiện trong WHERE trước mệnh đề.

ORDER BY mệnh đề phải luôn đi với LIMIT mệnh đề để chỉ định chính xác hàng nào sẽ được cập nhật. Nếu không, bạn sẽ không bao giờ biết hàng nào sẽ được cập nhật thực sự; bởi vì không có ORDER BY , thứ tự của các hàng trong bảng là không xác định.

SQLite UPDATE các ví dụ về tuyên bố

Chúng tôi sẽ sử dụng employees trong cơ sở dữ liệu mẫu để chứng minh UPDATE tuyên bố.

SELECT sau câu lệnh lấy một phần dữ liệu từ employees bảng:

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

Hãy thử nó

1) Cập nhật ví dụ về một cột

Giả sử, Jane kết hôn và cô ấy muốn đổi họ của mình thành họ của chồng, tức là Smith . Trong trường hợp này, bạn có thể cập nhật họ của Jane bằng câu lệnh sau:

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

Hãy thử nó

Biểu thức trong WHERE đảm bảo rằng chúng tôi chỉ cập nhật hồ sơ của Jane. Chúng tôi đặt lastname cột thành một chuỗi ký tự 'Smith' .

Để xác minh UPDATE , bạn sử dụng câu lệnh sau:

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

Hãy thử nó

2) Ví dụ về cập nhật nhiều cột

Giả sử Park Margaret đặt tại Toronto và bạn muốn thay đổi thông tin địa chỉ, thành phố và tiểu bang của anh ấy. Bạn có thể sử dụng UPDATE câu lệnh cập nhật nhiều cột như sau:

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

Hãy thử nó

Để xác minh UPDATE , bạn sử dụng câu lệnh sau:

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

Hãy thử nó

3) Cập nhật với ORDER BYLIMIT ví dụ mệnh đề

Lưu ý rằng bạn cần tạo SQLite với tùy chọn SQLITE_ENABLE_UPDATE_DELETE_LIMIT để thực hiện UPDATE câu lệnh với ORDER BY tùy chọn và LIMIT mệnh đề.

Hãy kiểm tra địa chỉ email của nhân viên trong employees bảng:

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

Hãy thử nó

Để cập nhật một hàng trong employees bảng, bạn sử dụng LIMIT 1 mệnh đề. Để đảm bảo rằng bạn cập nhật hàng đầu tiên của nhân viên được sắp xếp theo tên, bạn thêm ORDER BY firstname mệnh đề.

Vì vậy, tuyên bố sau đây cập nhật email của Andrew Adams :

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

Hãy thử nó

Email mới là sự kết hợp của tên, dấu chấm (.), Họ và hậu tố @chinookcorp.com

LOWER() chức năng chuyển đổi email thành chữ thường.

4) Cập nhật ví dụ về tất cả các hàng

Để cập nhật tất cả các hàng trong employees , bạn bỏ qua WHERE mệnh đề. Ví dụ:UPDATE sau tuyên bố thay đổi tất cả địa chỉ email của tất cả nhân viên thành chữ thường:

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

Hãy thử nó

Trong hướng dẫn này, bạn đã học cách sử dụng UPDATE của SQLite để cập nhật dữ liệu hiện có trong bảng.

Tài liệu tham khảo

  • https://www.sqlite.org/lang_update.html - Câu lệnh cập nhật 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. Cách định dạng kết quả SQLite dưới dạng bảng

  2. Tôi không thể đặt nhiều hình ảnh trong chế độ xem lưới?

  3. SQLite TỒN TẠI

  4. Tìm giá trị không chứa số trong SQLite

  5. Cách hoạt động của hàm Time () trong SQLite