উত্তর:
আমার মাইএসকিউএল বলেছে "ভুল সারণী সংজ্ঞা; কেবল একটি অটো কলাম থাকতে পারে এবং এটি অবশ্যই একটি কী হিসাবে সংজ্ঞায়িত করা উচিত " সুতরাং যখন আমি প্রাথমিক কী যুক্ত করেছি নীচে এটি কাজ করা শুরু করেছে:
CREATE TABLE book (
id INT AUTO_INCREMENT NOT NULL,
accepted_terms BIT(1) NOT NULL,
accepted_privacy BIT(1) NOT NULL,
primary key (id)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE book ADD id INT AUTO_INCREMENT NOT NULL, ADD PRIMARY KEY (id);
সম্পূর্ণ ত্রুটি বার্তা শোনায়:
ত্রুটি 1075 (42000): ভুল সারণী সংজ্ঞা; শুধুমাত্র একটি অটো কলাম থাকতে পারে এবং এটি অবশ্যই একটি কী হিসাবে সংজ্ঞায়িত করা উচিত
তাই যোগ primary key
করার auto_increment
ক্ষেত্র:
CREATE TABLE book (
id INT AUTO_INCREMENT primary key NOT NULL,
accepted_terms BIT(1) NOT NULL,
accepted_privacy BIT(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
এছাড়াও মনে রাখবেন যে "কী" এর অর্থ প্রাথমিক কী বোঝায় না । এর মতো কিছু কাজ করবে:
CREATE TABLE book (
isbn BIGINT NOT NULL PRIMARY KEY,
id INT NOT NULL AUTO_INCREMENT,
accepted_terms BIT(1) NOT NULL,
accepted_privacy BIT(1) NOT NULL,
INDEX(id)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
এটি একটি স্বীকৃত উদাহরণ এবং সম্ভবত সেরা ধারণা নয়, তবে এটি নির্দিষ্ট ক্ষেত্রে খুব কার্যকর হতে পারে।
CREATE TABLE book (
id INT AUTO_INCREMENT primary key NOT NULL,
accepted_terms BIT(1) NOT NULL,
accepted_privacy BIT(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1