questions - Mailing list pgsql-sql

From Lendvary Gyorgy
Subject questions
Date
Msg-id 357D2423.52EEFBA0@prolan.hu
Whole thread Raw
Responses Re: [SQL] questions  (Herouth Maoz <herouth@oumail.openu.ac.il>)
List pgsql-sql
I have a little problem with arrays. I,ve defined a type dbref. It has
two fields: char type[200] and char record[200]. My prolem is that I
can't insert a row into a table which has an attribute with type
dbref[2].
For instance:
Create table boci (hapci dbref[2]);
How can I insert a row into this table?
Please help me!

    My next problem is SPI interface. I have used LIBPQ but I need SPI. I
have read a description in PostgrSQL Programmer's Guide, but I
understand nearly nothing. Please write me where I can find a better
description about SPI!

    I have to treat very big tables from my C program. I update every
attribute with update command. When I update an attribute, I must go
through every tuple of the table. It takes a long time. I write you a
little piece of my program:

sprintf(buff, "CREATE TABLE boci (tup_num int, hapci int)");
PQexec(conn, buff);
for (i=0; i<10000; i++)
{
    sprintf(buff, "INSERT INTO boci VALUES(i)");
    PQexec(conn, buff);
}

for (i=0; i<10000; i++)
{
    x = GetValue(); /* GetValue isn't an interesting function */
    sprintf(buff, "UPDATE boci SET hapci = %d WHERE tup_num = %d", x,
i);
    PQexec(conn, buff);
}

I don't want to update every tuple indvidually but I want to prepare a
'block write'. I hope you understand what I'd like to.
Can you give me a good method for saving a long time? I need a program
that is about 10 times faster than mine.

Thanks for your attention!

gyurika@prolan.hu

pgsql-sql by date:

Previous
From: Dim Zegebart
Date:
Subject: querying array
Next
From: Herouth Maoz
Date:
Subject: Re: [SQL] questions