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

Ghi đè chuỗi nối tiếp trong PostgreSql bằng Entity Framework (C #)

Bạn nên đặt lại trình tự trong cơ sở dữ liệu trước bất kỳ lần chèn nào bằng cách sử dụng các giá trị được tạo tự động. Nó phụ thuộc nhiều vào bảng DDL. Có hai ví dụ cho tự động đăng nhập của ID được sử dụng nhiều nhất:

/*
-- Be careful with these 3 lines if you already have such objects in the your DB 
drop table if exists t1;
drop table if exists t2;
drop sequence if exists seq_t2_id;
*/

-- Using serial type for ID
create table t1 (t1_id serial, t1_name char varying);
insert into t1 (t1_id, t1_name) values (22, 'aaa');
select setval(pg_get_serial_sequence('t1', 't1_id'), (select max(t1_id) from t1)); -- Reset serial value
insert into t1 (t1_name) values ('bbb');
select * from t1;

-- Using sequence to generate IDs
create sequence seq_t2_id;
create table t2(t2_id bigint default nextval('seq_t2_id'), t2_name char varying);
insert into t2(t2_id, t2_name) values (22, 'aaa');
select setval('seq_t2_id', (select max(t2_id) from t2)); -- Update sequence
insert into t2 (t2_name) values ('bbb');
select * from t2;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. psycopg2.OperationalError:FATAL:giao thức frontend không được hỗ trợ 1234.5679:máy chủ hỗ trợ từ 2.0 đến 3.0

  2. Cách nhanh nhất để cắt ngắn dấu thời gian còn 5 phút trong Postgres là gì?

  3. GROUP BY và COUNT trong PostgreSQL

  4. Lỗi logic tính năng INSERT của PHP / MySQL

  5. Ánh xạ ngủ đông giữa PostgreSQL enum và Java enum