> On Aug 5, 2017, at 3:12 PM, Dan Cooperstock at Software4Nonprofits 
> <i...@software4nonprofits.com> wrote:
> 
> I’m on PostgreSQL 9.6, 64-bit Windows.
>  
> That really is the correct name for the sequence, because I’m not using 
> SERIAL. (I needed everything to match the naming in my existing DB I’m using 
> for the app, Firebird SQL, so the changes to make it work with either DB 
> would be as minimal as possible.) The setup of tables I’m using with this 
> sort of thing are like the following example:
>  
> CREATE SEQUENCE GEN_CATEGORY MINVALUE 0;
>  
> CREATE TABLE CATEGORY(
>   CATEGORYNUM    SMALLINT NOT NULL DEFAULT NEXTVAL('GEN_CATEGORY'),
>   DESCRIPTION        VARCHAR(20) NOT NULL,
>   CONSTRAINT PK_CATEGORY PRIMARY KEY (CATEGORYNUM)
> );
>  
> So as you can see GEN_ plus the tablename is indeed correct. The default on 
> the CATEGORYNUM column is definitely working, which I tested with direct SQL 
> commands: after inserting a row (with the CATEGORYNUM not specified in the 
> INSERT), if I SELECT currval(‘GEN_CATEGORY’), it gives me the correct value, 
> which is also what got saved in that column.
>  
> --------------------------------------------------------
> Dan Cooperstock
> DONATION and ACCOUNTS web site: http://www.Software4Nonprofits.com
> Email: i...@software4nonprofits.com
> Phone: 416-423-7722
> Mail: 57 Gledhill Ave., Toronto ON M4C 5K7, Canada
> 
> If you do not want to receive any further emails from Software4Nonprofits, 
> please reply to this email with the subject line "UNSUBSCRIBE", and we will 
> immediately remove you from our mailing list, if you are on it.
> 
>  
> From: Melvin Davidson [mailto:melvin6...@gmail.com] 
> Sent: August 5, 2017 4:46 PM
> To: Dan Cooperstock at Software4Nonprofits <i...@software4nonprofits.com>
> Cc: pgsql-general@postgresql.org
> Subject: Re: [GENERAL] PostgreSQL with PowerBuilder, and Identity keys 
> (serials)
>  
> >GetIdentity="Select currval('GEN_&TableName')"
> 
> FYI, it would be helpful to specify the PostgreSQL version & O/S, but 
> generically speaking, in PostgreSQL, when you generate a sequence 
> by specifying serial as data type, the name takews the form of 
> tablename_columnname_seq, so in your case, try
> 
> https://www.postgresql.org/docs/9.4/static/datatype-numeric.html#DATATYPE-SERIAL
> 
> GetIdentity="Select currval('tablename_column_seq')".
> 
> BTW, in PostgreSQL, it is NOT recommended to use mixed case object names, as 
> all names are converted to lowercase unless enclosed in double quotes.
> 
>  
> On Sat, Aug 5, 2017 at 4:09 PM, Dan Cooperstock at Software4Nonprofits 
> <i...@software4nonprofits.com> wrote:
>> I’m trying to get a Postgres DB version of an application I write in 
>> PowerBuilder working. The thing I’m stuck on is Identity keys – what you set 
>> up with the SERIAL attribute or SEQUENCEs / GENERATORs in Postgres.
>>  
>> I have the sequence set up and clearly working. And in PowerBuilder, I have 
>> added a section I found online to a file it uses to know how to deal with 
>> different aspects of different DBs (PBODBxxx.INI) for Postgres, including 
>> the following line for retrieving an identity key after saving a record, 
>> when the DB automatically fills in the value:
>>  
>> GetIdentity="Select currval('GEN_&TableName')"
>>  
>> That obviously depends on the generator being named “GEN_” plus the table’s 
>> name – which is true in our case.
>>  
>> But nothing like that is happening. Does anyone else have PostgresSQL 
>> working with PowerBuilder and identity keys, who can give me some pointers 
>> on how get this to work?
>>  
>> Thanks.
>>  
>> --------------------------------------------------------
>> Dan Cooperstock
>> DONATION and ACCOUNTS web site: http://www.Software4Nonprofits.com
>> Email: i...@software4nonprofits.com
>> Phone: 416-423-7722
>> Mail: 57 Gledhill Ave., Toronto ON M4C 5K7, Canada
>> 
>> If you do not want to receive any further emails from Software4Nonprofits, 
>> please reply to this email with the subject line "UNSUBSCRIBE", and we will 
>> immediately remove you from our mailing list, if you are on it.
>> 
>>  
> 
> 
> 
> -- 
> Melvin Davidson
> I reserve the right to fantasize.  Whether or not you 
> wish to share my fantasy is entirely up to you. 

I don’t see that you posted any sort of error message?
Also don’t test that sequence more than 64K times as you’ll certainly get a 
number too big for smallest :)
Did your direct sql testing actually use ALL CAPS?



-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to