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

Oracle SQL:Cách đọc và tăng một trường

Trong trường hợp cụ thể này, một dãy số là giải pháp phù hợp như đã đề cập. Nhưng nếu trong một số trường hợp trong tương lai, bạn cần cả cập nhật thứ gì đó và trả về một giá trị trong cùng một câu lệnh, bạn có thể sử dụng RETURNING mệnh đề:

UPDATE atable SET foo = do_something_with(foo) RETURNING foo INTO ?

Nếu mã gọi là PL / SQL, hãy thay thế? với một biến PL / SQL cục bộ; nếu không, bạn có thể ràng buộc nó như một tham số đầu ra trong chương trình của mình.

Chỉnh sửa:Vì bạn đã đề cập đến Perl, một cái gì đó như thế này sẽ hoạt động (chưa được kiểm tra):

my $sth = $dbh->prepare('UPDATE mytable SET idnext = idnext + 1 returning idnext into ?');
my $idnext;
$sth->bind_param_inout(1, \$idnext, 8);
$sth->execute; # now $idnext should contain the value

Xem DBI .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hàm TZ_OFFSET () trong Oracle

  2. Oracle RAC VIP và ARP Primer

  3. Hàm JSON_OBJECT () trong Oracle

  4. Có sự khác biệt nào giữa! =Và <> trong Oracle Sql không?

  5. Cách xem câu lệnh Oracle SQL thực đang được thực thi