Trong nhiều trường hợp, các câu lệnh tỷ lệ kèo bóng đá cụ thể mà một ứng dụng phải thực thi được biết tại thời điểm ứng dụng được viết. Tuy nhiên, trong một số trường hợp, các câu lệnh tỷ lệ kèo bóng đá được sáng tác tại thời điểm chạy hoặc được cung cấp bởi một nguồn bên ngoài. Trong những trường hợp này, bạn không thể nhúng các câu lệnh tỷ lệ kèo bóng đá trực tiếp vào mã nguồn C, nhưng có một cơ sở cho phép bạn gọi các câu lệnh tỷ lệ kèo bóng đá tùy ý mà bạn cung cấp trong một biến chuỗi.
Cách đơn giản nhất để thực hiện câu lệnh tỷ lệ kèo bóng đá tùy ý là sử dụng lệnhthực hiện ngay lập tức
. Ví dụ:
11452_11600
thực hiện ngay lập tức
có thể được sử dụng cho các câu lệnh tỷ lệ kèo bóng đá không trả về tập kết quả (ví dụ: DDL,Chèn
, Cập nhật
, Xóa
). Bạn không thể thực hiện các câu tỷ lệ kèo bóng đá truy xuất dữ liệu (ví dụ:Chọn
) Theo cách này. Phần tiếp theo mô tả cách làm điều đó.
Một cách mạnh mẽ hơn để thực hiện các câu lệnh tỷ lệ kèo bóng đá tùy ý là chuẩn bị chúng một lần và thực hiện câu lệnh đã chuẩn bị thường xuyên như bạn muốn. Cũng có thể chuẩn bị một phiên bản tổng quát của một câu lệnh và sau đó thực hiện các phiên bản cụ thể của nó bằng cách thay thế các tham số. Khi chuẩn bị tuyên bố, hãy viết các dấu câu hỏi mà bạn muốn thay thế các tham số sau này. Ví dụ:
EXEC tỷ lệ kèo bóng đá bắt đầu phần khai báo; const char *stmt = "chèn vào các giá trị test1 (?,?);"; EXEC tỷ lệ kèo bóng đá END TUYÊN BỐ TUYÊN BỐ; EXEC tỷ lệ kèo bóng đá Chuẩn bị MyStmt từ: STMT; ... EXEC tỷ lệ kèo bóng đá Thực thi MyStmt bằng 42, 'foobar';
Khi bạn không cần câu tỷ lệ kèo bóng đá đã chuẩn bị nữa, bạn nên giải quyết nó:
EXEC tỷ lệ kèo bóng đá DealLocate Preptên
;
Để thực hiện câu lệnh tỷ lệ kèo bóng đá với một hàng kết quả duy nhất,thực thi
có thể được sử dụng. Để lưu kết quả, thêm mộtthành
mệnh đề.
13533_13785
ANthực thi
tỷ lệ kèo bóng đá có thể cóthành
mệnh đề, ASử dụng
mệnh đề, cả hai hoặc không.
Nếu một truy vấn dự kiến sẽ trả về nhiều hơn một hàng kết quả, nên sử dụng con trỏ, như trong ví dụ sau. (Nhìn thấyPhần 36.3.2Để biết thêm chi tiết về con trỏ.)
EXEC tỷ lệ kèo bóng đá bắt đầu khai báo; Char Dbaname [128]; DatName char [128]; char *stmt = "Chọn U.usename là Dbaname, D.DatName" "Từ pg_database D, pg_user u" "Trường hợp D.Datdba = U.Usesysid"; EXEC tỷ lệ kèo bóng đá END TUYÊN BỐ TUYÊN BỐ; EXEC tỷ lệ kèo bóng đá kết nối với TestDB với tư cách là người dùng người dùng CON1; Exec tỷ lệ kèo bóng đá chọn pg_catalog.set_config ('search_path', '', false); Exec tỷ lệ kèo bóng đá cam kết; EXEC tỷ lệ kèo bóng đá Chuẩn bị STMT1 từ: STMT; EXEC tỷ lệ kèo bóng đá tuyên bố con trỏ con trỏ cho STMT1; Exec tỷ lệ kèo bóng đá mở con trỏ1; EXEC tỷ lệ kèo bóng đá Bất cứ khi nào không tìm thấy bị phá vỡ; while (1) Exec tỷ lệ kèo bóng đá Fetch Con trỏ1 vào: DBANAME,: DATNAME; printf ("dbaname =%s, datName =%s \ n", dbaname, datName); Exec tỷ lệ kèo bóng đá Đóng con trỏ1; Exec tỷ lệ kèo bóng đá cam kết; Exec tỷ lệ kèo bóng đá ngắt kết nối tất cả;
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.