Search code examples
mysqlsqlcreate-table

mysql error while creating a table


I am new to mysql, please help me to make this table execute.

CREATE TABLE `jjsaar`.`dd_chq` (
  `reg_id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `receipt_no` INTEGER UNSIGNED NOT NULL,
  `name` VARCHAR NOT NULL,
  `add` VARCHAR NOT NULL,
  `phone_no` VARCHAR NOT NULL,
  `purpose` VARCHAR NOT NULL,
  `pay_method` VARCHAR NOT NULL,
  `amount` INTEGER UNSIGNED NOT NULL,
  `dd_chq_no` VARCHAR NOT NULL,
  `bank_details` VARCHAR NOT NULL,
  `timestamp` TIMESTAMP NOT NULL,
  PRIMARY KEY (`reg_id`)
)
ENGINE = InnoDB;

Solution

  • I guess you have this error message

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NOT NULL, add VARCHAR NOT NULL, phone_no VARCHAR(25) NOT NULL, ' at line 4:

    you should specify the length for VARCHAR values, eg

    `name` VARCHAR(25) NOT NULL,
    

    you working CREATE TABLE statement

    CREATE TABLE `jjsaar`.`dd_chq` 
    (
      `reg_id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
      `receipt_no` INTEGER UNSIGNED NOT NULL,
      `name` VARCHAR(25) NOT NULL,
      `add` VARCHAR(25) NOT NULL,
      `phone_no` VARCHAR(25) NOT NULL,
      `purpose` VARCHAR(25) NOT NULL,
      `pay_method` VARCHAR(25) NOT NULL,
      `amount` INTEGER UNSIGNED NOT NULL,
      `dd_chq_no` VARCHAR(25) NOT NULL,
      `bank_details` VARCHAR(25) NOT NULL,
      `timestamp` TIMESTAMP NOT NULL,
      PRIMARY KEY (`reg_id`)
    )
    ENGINE = InnoDB;