Giao dịch là một tập hợp các hoạt động của Kho dữ liệu trên một hoặc nhiều thực thể. Mỗi giao dịch được đảm bảo là nguyên tử, có nghĩa là các giao dịch không bao giờ được áp dụng một phần. Tất cả các thao tác trong giao dịch đều được áp dụng hoặc không thao tác nào được áp dụng
Di sản
Yêu cầu kho dữ liệu > Giao dịchBưu kiện
@google-cloud/kho dữ liệuVí dụ
const {Datastore} = require['@google-cloud/datastore'];
const datastore = new Datastore[];
const transaction = datastore.transaction[];
nhà xây dựng
[hàm tạo][kho dữ liệu, tùy chọn]
constructor[datastore: Datastore, options?: TransactionOptions];
Xây dựng một thể hiện mới của lớp
skipCommit?: boolean;
6Tham sốTênMô tảdatastoreskipCommit?: boolean;
7tùy chọn
skipCommit?: boolean;
8Thuộc tính
Thực thể đã sửa đổi_
modifiedEntities_: ModifiedEntities;
Mô tả giá trị thuộc tính Thực thể được sửa đổikhông gian tên
namespace?: string;
Mô tả giá trị thuộc tính chuỗichỉ đọc
readOnly: boolean;
Mô tả giá trị thuộc tính booleanyêu cầu
________số 8
Mô tả loại giá trị thuộc tính Chức năngbỏ quaCam kết
skipCommit?: boolean;
Mô tả giá trị thuộc tính booleanphương pháp
cam kết [gaxOptions]
constructor[datastore: Datastore, options?: TransactionOptions];
0Cam kết giao dịch từ xa và hoàn thiện phiên bản giao dịch hiện tại
Nếu yêu cầu cam kết không thành công, chúng tôi sẽ tự động khôi phục giao dịch
ParameterNameDescriptiongaxOptionsskipCommit?: boolean;
9Yêu cầu tùy chọn cấu hình, được nêu tại đây. https. //googleapis. github. io/gax-nodejs/toàn cầu. html#CallOptions.
ReturnsTypeDescription Lời hứa < Phản hồi cam kết >Ví dụconstructor[datastore: Datastore, options?: TransactionOptions];
2cam kết [gọi lại]
constructor[datastore: Datastore, options?: TransactionOptions];
3ParameterNameDescriptioncallbackconstructor[datastore: Datastore, options?: TransactionOptions];
00ReturnsTypeDescription void
cam kết [gaxOptions, gọi lại]
constructor[datastore: Datastore, options?: TransactionOptions];
0ParametersNameDescriptiongaxOptionsskipCommit?: boolean;
9callback
constructor[datastore: Datastore, options?: TransactionOptions];
00ReturnsTypeDescription void
tạo Truy vấn [loại]
constructor[datastore: Datastore, options?: TransactionOptions];
1Tạo truy vấn cho loại đã chỉ định. Xem {mô-đun. kho dữ liệu/truy vấn} cho tất cả các phương pháp có sẵn
ParameterNameDescriptionkindconstructor[datastore: Datastore, options?: TransactionOptions];
03Loại cần truy vấn.
ReturnsTypeDescription Truy vấn{Truy vấn}
Ví dụconstructor[datastore: Datastore, options?: TransactionOptions];
2tạo Truy vấn [loại]
constructor[datastore: Datastore, options?: TransactionOptions];
3ParameterNameDescriptionkindconstructor[datastore: Datastore, options?: TransactionOptions];
04ReturnsTypeDescription Truy vấn
createQuery[không gian tên, loại]
constructor[datastore: Datastore, options?: TransactionOptions];
4constructor[datastore: Datastore, options?: TransactionOptions];
03kind
constructor[datastore: Datastore, options?: TransactionOptions];
03ReturnsTypeDescription Truy vấn
createQuery[không gian tên, loại]
constructor[datastore: Datastore, options?: TransactionOptions];
5ParametersNameDescriptionnamespaceconstructor[datastore: Datastore, options?: TransactionOptions];
03kind
constructor[datastore: Datastore, options?: TransactionOptions];
04ReturnsTypeDescription Truy vấn
xóa [thực thể]
constructor[datastore: Datastore, options?: TransactionOptions];
6Xóa tất cả các thực thể được xác định bằng [các] khóa được chỉ định trong giao dịch hiện tại
ParameterNameDescriptionentitiesconstructor[datastore: Datastore, options?: TransactionOptions];
09ReturnsTypeDescription bất kỳ Ví dụ
constructor[datastore: Datastore, options?: TransactionOptions];
7chèn [thực thể]
constructor[datastore: Datastore, options?: TransactionOptions];
8Bản đồ tới , buộc phương thức phải là
constructor[datastore: Datastore, options?: TransactionOptions];
20ParameterNameDescriptionentitiesconstructor[datastore: Datastore, options?: TransactionOptions];
09[Các] đối tượng khóa của kho dữ liệu.
ReturnsTypeDescription voidrollback [gọi lại]
constructor[datastore: Datastore, options?: TransactionOptions];
9Đảo ngược giao dịch từ xa và hoàn tất phiên bản giao dịch hiện tại
ParameterNameDescriptioncallbackconstructor[datastore: Datastore, options?: TransactionOptions];
22Hàm gọi lại.
modifiedEntities_: ModifiedEntities;
0khôi phục [gaxOptions]
modifiedEntities_: ModifiedEntities;
1ParameterNameDescriptiongaxOptionsskipCommit?: boolean;
9ReturnsTypeDescription Promise < RollbackResponse>
khôi phục [gaxOptions, gọi lại]
modifiedEntities_: ModifiedEntities;
2ParametersNameDescriptiongaxOptionsskipCommit?: boolean;
9callback
constructor[datastore: Datastore, options?: TransactionOptions];
22ReturnsTypeDescription void
chạy [tùy chọn]
modifiedEntities_: ModifiedEntities;
3Bắt đầu giao dịch từ xa. Trong cuộc gọi lại được cung cấp, hãy chạy các lệnh giao dịch của bạn
ParameterNameDescriptionoptionsconstructor[datastore: Datastore, options?: TransactionOptions];
26Đối tượng cấu hình.
ReturnsTypeDescription Lời hứa < RunResponse >Ví dụmodifiedEntities_: ModifiedEntities;
4chạy [gọi lại]
modifiedEntities_: ModifiedEntities;
5ParameterNameDescriptioncallbackconstructor[datastore: Datastore, options?: TransactionOptions];
27ReturnsTypeDescription void
chạy [tùy chọn, gọi lại]
modifiedEntities_: ModifiedEntities;
6ParametersNameDescriptionoptionsconstructor[datastore: Datastore, options?: TransactionOptions];
26callback
constructor[datastore: Datastore, options?: TransactionOptions];
27ReturnsTypeDescription void
lưu [thực thể]
modifiedEntities_: ModifiedEntities;
7Chèn hoặc cập nhật [các] đối tượng được chỉ định trong giao dịch hiện tại. Nếu một khóa không đầy đủ, đối tượng được liên kết của nó sẽ được chèn vào và đối tượng Khóa ban đầu được cập nhật để chứa ID đã tạo
Phương thức này sẽ xác định đúng phương thức Kho dữ liệu để thực thi [
constructor[datastore: Datastore, options?: TransactionOptions];
30, constructor[datastore: Datastore, options?: TransactionOptions];
20 hoặc constructor[datastore: Datastore, options?: TransactionOptions];
32] bằng cách sử dụng [các] khóa được cung cấp. Ví dụ: nếu bạn cung cấp khóa không đầy đủ [khóa không có ID], thì yêu cầu sẽ tạo một thực thể mới và tự động chỉ định ID của thực thể đó. Nếu bạn cung cấp khóa hoàn chỉnh, thực thể sẽ được cập nhật với dữ liệu được chỉ địnhTheo mặc định, tất cả các thuộc tính được lập chỉ mục. Để ngăn không cho một thuộc tính được đưa vào *tất cả* chỉ mục, bạn phải cung cấp một mảng
constructor[datastore: Datastore, options?: TransactionOptions];
33. xem ví dụ bên dưới