Pārlūkot izejas kodu

增加id是否存在的逻辑

master
OCEAN pirms 2 mēnešiem
vecāks
revīzija
752ecfc884
5 mainītis faili ar 16 papildinājumiem un 1 dzēšanām
  1. +16
    -1
      tcp_server/src/main.rs
  2. Binārs
      tcp_server/target/debug/deps/tcp_server.exe
  3. Binārs
      tcp_server/target/debug/deps/tcp_server.pdb
  4. Binārs
      tcp_server/target/debug/tcp_server.exe
  5. Binārs
      tcp_server/target/debug/tcp_server.pdb

+ 16
- 1
tcp_server/src/main.rs Parādīt failu

@@ -41,6 +41,21 @@ async fn connect_db(config: &Config) -> Result<tokio_postgres::Client, PgError>
}

async fn insert_instrument(client: &tokio_postgres::Client, info: &InstrumentInfo) -> Result<(), PgError> {
// 先检查 ID 是否存在
let exists = client
.query_one(
"SELECT EXISTS(SELECT 1 FROM public.hy_instrument WHERE id = $1)",
&[&info.id],
)
.await?
.get::<_, bool>(0);

if exists {
println!("ID {} 已存在,跳过插入", info.id);
return Ok(());
}

// ID 不存在,执行插入
client.execute(
"INSERT INTO public.hy_instrument (id, informationid, instrumentcode, laboratoryid, name, remark, specification)
OVERRIDING SYSTEM VALUE
@@ -57,7 +72,7 @@ async fn insert_instrument(client: &tokio_postgres::Client, info: &InstrumentInf
)
.await?;

println!("成功插入仪器信息: {}", info.instrumentcode);
println!("成功插入仪器信息: {} (ID: {})", info.instrumentcode, info.id);
Ok(())
}



Binārs
tcp_server/target/debug/deps/tcp_server.exe Parādīt failu


Binārs
tcp_server/target/debug/deps/tcp_server.pdb Parādīt failu


Binārs
tcp_server/target/debug/tcp_server.exe Parādīt failu


Binārs
tcp_server/target/debug/tcp_server.pdb Parādīt failu


Notiek ielāde…
Atcelt
Saglabāt