Sybase 11 - Create a table with AUTOINCREMENT field

Hi,

I want to create a table with an autoincrement field, with the following syntax:

CREATE TABLE auto1
( primary1 INTEGER NOT NULL DEFAULT AUTOINCREMENT,
data1 INTEGER NOT NULL,
PRIMARY KEY ( primary1 ) );

Sybase reports with an error:

Incorrect syntax near the keyword 'DEFAULT'.

I've tried every possible combination, such as removing NOT NULL, DEFAULT, etc.. However, the only way to create the table successfully is to remove the AUTOINCREMENT syntax.

Or is there any option in Sybase to turn off the autoincrement feature?

Anyone can help? Thank you.
keewooiAsked:
Who is Participating?
 
ahoorCommented:
I suppose you use Sybase ASE? autoincrement is not Sybase-syntax, use"identity" instead.

CREATE TABLE auto1
( primary1 numeric(10) identity,
data1 INTEGER NOT NULL,
PRIMARY KEY ( primary1 ) )

Also use the numeric datatype for identity columns, you get to decide how big it should be yourself. Since you wanted to use integer I think numeric(10) will do.

0
 
keewooiAuthor Commented:
Thank you so much, it has solved my problem!

Now, can you please tell me, whether or not it's fine to use numeric(10) to replace INT?
0
 
ahoorCommented:
Sure it's fine... numeric(10) means you can have numbers up to 9.999.999.999. That's almost 7.000.000.000 more than an integer highest value.
0
 
keewooiAuthor Commented:
Okay. Thans for the sulution. I appreciate that.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.