안녕하세요.
지금, C에서 정수를 입력받아서 DB server에서 그만큼에 해당하는 table을 생성하고 있습니다.
현재는 입력 받는 정수를 n이라 한다면,
for (int i=0;i<n;i++)
PQexec (conn, "CREATE TABLE ...");
이런식으로 하고 있습니다. 문제는 n이 10000정도 되어 버리니깐 시간이 꽤 걸리더군요. 아마 테이블 하나하나 만들때마다 쿼리를 날려서 그런것 같은데,
좀더 빠르게 할 수 있는 방법이 없을까요?
제가 생각하고 있는 방법은
(1) transaction으로 묶어서 처리한다. (transaction이 이런 개념이 맞는지 모르겠습니다. transaction으로 묶으면 commit을 한번만 하니 웬지 빠를거 같다는)
(2) Procedure language (such as pl/pgsql)을 이용한다.
이렇게 두가지 방법을 생각하고 있는데 고수님들의 조언 부탁드립니다.
감사합니다.
|