Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.

Tip of the Day
Language: SQL Server
Expertise: Beginner
Jul 17, 2000



Application Security Testing: An Integral Part of DevOps

Create a Table with Autonumbering

I've tried to create a table (for my guestbook) with an auto increment column. Here's my statement:
CREATE TABLE guestbook
(id mediumint(8) NOT NULL KEY(PRI) default(0) auto_increment, 
name varchar(30) NOT NULL,
email varchar(30) NOT NULL,
comments text NOT NULL);
Why doesn't it work?

If you're using SQL Server, you need to make minor changes to your create table statement in order to create the guestbook table:

  1. The id column should be specified as int with no size. There's no medium int data type in SQL Server. The int data type allows values up to 2,147,483,647. You could use the smallint data type allowing values up to 32,767, but it's worth the extra two bytes not to worry about outgrowing the column.
  2. You gain the auto_increment capability by using the IDENTITY attribute on a column. This attribute increments the column value each time a record is inserted. The syntax is:
    You can provide a starting value and a value to increment by—the default is 1,1 if none are specified.
  3. The primary key constraint must be defined with the keywords "PRIMARY KEY."
The modified statement looks like this:
CREATE TABLE guestbook
name varchar(30) NOT NULL,
email varchar(30) NOT NULL,
comments text NOT NULL);
DevX Pro
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



We have made updates to our Privacy Policy to reflect the implementation of the General Data Protection Regulation.
Thanks for your registration, follow us on our social networks to keep up-to-date