안녕하세요.
저는 C#(WPF)으로 서버와 클라이언트를 만들고 있습니다.
굼금한게 C#과 MariaDB와의 기능입니다.
상황은 이렇습니다.
1. 1000~2000개의 클라이언트가 서버로 매우 짧은 간격으로 붙는다.
2. 서버에서는 각각의 클라이언트에 해당하는 테이블이 DB상에 존재하는지 확인하고
3. DB에 존재하지 않으면 해당 클라이언트의 테이블을 생성 후 어떤 데이터를 그 테이블에 INSERT 또는 UPGRADE하고,
4. DB에 존재하면 바로 어떤 데이터를 그 테이블에 INSERT 또는 UPGRADE합니다.
문제는 2,3,4의 과정당 DataSet에 결과를 받아서 처리를 하게 되면 1000~2000개가 매우 빠른 가격으로 붙으면 무리가 간다는 겁니다.
그래서 궁금한게, 혹시 C#에서 2,3,4의 과정을 될수 있으면 하나의 쿼리로 처리를 할수는 없는가 입니다.
ON DUPLICATE KEY UPDATE개념은 어느정도 알고 있는데, 위의 테이블 존재체크같은 겨우엔 해당않하는 거 같습니다.
show tables like tablenames의 결과값을 받아서 테이블의 유무로 insert 나 upgrade하는 과정을 최대한 쿼리 한줄로 하는 방법이 없을까요....?
꼭 show tables like tablenames의 결과를 DataSet으로 받아서 그 다음을 처리해야 하나요?
감사드립니다.
[최초 등록일: ]
[최종 수정일: 4/14/2023]