PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Ganti urutan serial di PostgreSql dengan Entity Framework (C#)

Anda harus mengatur ulang urutan dalam database sebelum penyisipan apa pun menggunakan nilai yang dibuat secara otomatis. Hal ini sangat tergantung pada tabel DDL. Ada dua contoh untuk autogen ID yang paling sering digunakan:

/*
-- 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. Kesalahan saat menginstal psycopg2==2.6.2

  2. Pola &Pengubah Template untuk Pemformatan Tanggal/Waktu di PostgreSQL

  3. Bagaimana cara mengganti database di postgres?

  4. Dapatkan hasil yang tepat untuk pembagian bilangan

  5. Pengaturan LC_CTYPE yang dipilih memerlukan penyandian LATIN1