2005-03-14

накидать данные для игр

        List of relations
 Schema | Name | Type  |  Owner   
--------+------+-------+----------
 public | a    | table | postgres
(1 row)

test=# \q
pg@zen:~/test$ for ((i=0;i<100;i++)) do echo $i; done | psql test -c 'copy a from stdin;'

Если надо сгенерить кучу транзакций

for ((i=0;i<2000;i++)) do 
   psql test -c "begin;insert into t1 values($i); commit;"; 
done

А если при этом хочется место на диске сэкономить (только не забыть сделать vacuum !)

for ((i=0;i<2000;i++)) do 
   psql test -c "begin;insert into t1 values($i); commit;
                 begin; delete from t1 where i=$i; commit;"; 
done

А можно использовать $RANDOM, $(( $RANDOM >> 13)), $(( $RANDOM % RANGE )), чтобы вставлять случайные числа(0 - 32767). RANGE - это число, задающее интервал чисел, например, 400 - числа будут генериться в диапазоне 0-400