<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=SQL%2FMySQL%2FTable_Index%2FAlter_Table</id>
		<title>SQL/MySQL/Table Index/Alter Table - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=SQL%2FMySQL%2FTable_Index%2FAlter_Table"/>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=SQL/MySQL/Table_Index/Alter_Table&amp;action=history"/>
		<updated>2026-04-04T15:56:06Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://sqle.ru/index.php?title=SQL/MySQL/Table_Index/Alter_Table&amp;diff=5480&amp;oldid=prev</id>
		<title> в 13:46, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=SQL/MySQL/Table_Index/Alter_Table&amp;diff=5480&amp;oldid=prev"/>
				<updated>2010-05-26T13:46:00Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 13:46, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://sqle.ru/index.php?title=SQL/MySQL/Table_Index/Alter_Table&amp;diff=5481&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=SQL/MySQL/Table_Index/Alter_Table&amp;diff=5481&amp;oldid=prev"/>
				<updated>2010-05-26T10:17:25Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Altering and Dropping Tables==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Drop table Stock;&lt;br /&gt;
CREATE TABLE Stock&lt;br /&gt;
(&lt;br /&gt;
   ID SMALLINT&lt;br /&gt;
);&lt;br /&gt;
Describe Stock;&lt;br /&gt;
ALTER TABLE Stock&lt;br /&gt;
ADD COLUMN Quantity SMALLINT UNSIGNED NOT NULL,&lt;br /&gt;
MODIFY ID SMALLINT UNSIGNED NOT NULL,&lt;br /&gt;
ADD PRIMARY KEY (ID);&lt;br /&gt;
Describe Stock;&lt;br /&gt;
ALTER TABLE Stock&lt;br /&gt;
DROP COLUMN Quantity,&lt;br /&gt;
DROP PRIMARY KEY;&lt;br /&gt;
Describe Stock;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Altering Database Tables: Add a Column==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
mysql&amp;gt; CREATE TABLE Employee (&lt;br /&gt;
    -&amp;gt;    Name    VARCHAR(50) PRIMARY KEY NOT NULL,&lt;br /&gt;
    -&amp;gt;    PhoneNo VARCHAR(15) DEFAULT &amp;quot;Unknown Phone&amp;quot;,&lt;br /&gt;
    -&amp;gt;    Age     INT CHECK (Age BETWEEN 20 and 30));&lt;br /&gt;
Query OK, 0 rows affected (0.09 sec)&lt;br /&gt;
mysql&amp;gt; Describe Employee;&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Field   | Type        | Null | Key | Default       | Extra |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Name    | varchar(50) |      | PRI |               |       |&lt;br /&gt;
| PhoneNo | varchar(15) | YES  |     | Unknown Phone |       |&lt;br /&gt;
| Age     | int(11)     | YES  |     | NULL          |       |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
3 rows in set (0.01 sec)&lt;br /&gt;
&lt;br /&gt;
mysql&amp;gt; Select * from Employee;&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
| Name     | PhoneNo       | Age  |&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
| John Doe | Unknown Phone |   31 |&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
1 row in set (0.00 sec)&lt;br /&gt;
mysql&amp;gt; ALTER TABLE Employee ADD Address VARCHAR(50);&lt;br /&gt;
Query OK, 1 row affected (0.04 sec)&lt;br /&gt;
Records: 1  Duplicates: 0  Warnings: 0&lt;br /&gt;
mysql&amp;gt; Describe Employee;&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Field   | Type        | Null | Key | Default       | Extra |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Name    | varchar(50) |      | PRI |               |       |&lt;br /&gt;
| PhoneNo | varchar(15) | YES  |     | Unknown Phone |       |&lt;br /&gt;
| Age     | int(11)     | YES  |     | NULL          |       |&lt;br /&gt;
| Address | varchar(50) | YES  |     | NULL          |       |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
4 rows in set (0.00 sec)&lt;br /&gt;
mysql&amp;gt; Select * from Employee;&lt;br /&gt;
+----------+---------------+------+---------+&lt;br /&gt;
| Name     | PhoneNo       | Age  | Address |&lt;br /&gt;
+----------+---------------+------+---------+&lt;br /&gt;
| John Doe | Unknown Phone |   31 | NULL    |&lt;br /&gt;
+----------+---------------+------+---------+&lt;br /&gt;
1 row in set (0.00 sec)&lt;br /&gt;
&lt;br /&gt;
*/&lt;br /&gt;
Drop TABLE Employee;&lt;br /&gt;
       &lt;br /&gt;
CREATE TABLE Employee (&lt;br /&gt;
   Name    VARCHAR(50) PRIMARY KEY NOT NULL, &lt;br /&gt;
   PhoneNo VARCHAR(15) DEFAULT &amp;quot;Unknown Phone&amp;quot;,&lt;br /&gt;
   Age     INT CHECK (Age BETWEEN 20 and 30));&lt;br /&gt;
Describe Employee;&lt;br /&gt;
INSERT INTO Employee (Name, Phone, Age) VALUES (&amp;quot;Joe Wang&amp;quot;, &amp;quot;666 2323&amp;quot;, 26);&lt;br /&gt;
INSERT INTO Employee (Name, Age) VALUES (&amp;quot;John Doe&amp;quot;, 31);&lt;br /&gt;
Select * from Employee;&lt;br /&gt;
       &lt;br /&gt;
ALTER TABLE Employee ADD Address VARCHAR(50);&lt;br /&gt;
Describe Employee;&lt;br /&gt;
Select * from Employee;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Altering Database Tables: Add More Columns==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
mysql&amp;gt; CREATE TABLE Employee (&lt;br /&gt;
    -&amp;gt;    Name    VARCHAR(50) PRIMARY KEY NOT NULL,&lt;br /&gt;
    -&amp;gt;    PhoneNo VARCHAR(15) DEFAULT &amp;quot;Unknown Phone&amp;quot;,&lt;br /&gt;
    -&amp;gt;    Age     INT CHECK (Age BETWEEN 20 and 30));&lt;br /&gt;
Query OK, 0 rows affected (0.12 sec)&lt;br /&gt;
mysql&amp;gt; Describe Employee;&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Field   | Type        | Null | Key | Default       | Extra |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Name    | varchar(50) |      | PRI |               |       |&lt;br /&gt;
| PhoneNo | varchar(15) | YES  |     | Unknown Phone |       |&lt;br /&gt;
| Age     | int(11)     | YES  |     | NULL          |       |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
3 rows in set (0.00 sec)&lt;br /&gt;
&lt;br /&gt;
mysql&amp;gt; Select * from Employee;&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
| Name     | PhoneNo       | Age  |&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
| John Doe | Unknown Phone |   31 |&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
1 row in set (0.00 sec)&lt;br /&gt;
mysql&amp;gt; ALTER TABLE Employee ADD (EMail VARCHAR(25), ICQ VARCHAR(15));&lt;br /&gt;
Query OK, 1 row affected (0.08 sec)&lt;br /&gt;
Records: 1  Duplicates: 0  Warnings: 0&lt;br /&gt;
mysql&amp;gt; Describe Employee;&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Field   | Type        | Null | Key | Default       | Extra |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Name    | varchar(50) |      | PRI |               |       |&lt;br /&gt;
| PhoneNo | varchar(15) | YES  |     | Unknown Phone |       |&lt;br /&gt;
| Age     | int(11)     | YES  |     | NULL          |       |&lt;br /&gt;
| EMail   | varchar(25) | YES  |     | NULL          |       |&lt;br /&gt;
| ICQ     | varchar(15) | YES  |     | NULL          |       |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
5 rows in set (0.00 sec)&lt;br /&gt;
mysql&amp;gt; Select * from Employee;&lt;br /&gt;
+----------+---------------+------+-------+------+&lt;br /&gt;
| Name     | PhoneNo       | Age  | EMail | ICQ  |&lt;br /&gt;
+----------+---------------+------+-------+------+&lt;br /&gt;
| John Doe | Unknown Phone |   31 | NULL  | NULL |&lt;br /&gt;
+----------+---------------+------+-------+------+&lt;br /&gt;
1 row in set (0.01 sec)&lt;br /&gt;
&lt;br /&gt;
*/&lt;br /&gt;
Drop TABLE Employee;&lt;br /&gt;
       &lt;br /&gt;
CREATE TABLE Employee (&lt;br /&gt;
   Name    VARCHAR(50) PRIMARY KEY NOT NULL, &lt;br /&gt;
   PhoneNo VARCHAR(15) DEFAULT &amp;quot;Unknown Phone&amp;quot;,&lt;br /&gt;
   Age     INT CHECK (Age BETWEEN 20 and 30));&lt;br /&gt;
Describe Employee;&lt;br /&gt;
INSERT INTO Employee (Name, Phone, Age) VALUES (&amp;quot;Joe Wang&amp;quot;, &amp;quot;666 2323&amp;quot;, 26);&lt;br /&gt;
INSERT INTO Employee (Name, Age) VALUES (&amp;quot;John Doe&amp;quot;, 31);&lt;br /&gt;
Select * from Employee;&lt;br /&gt;
  &lt;br /&gt;
ALTER TABLE Employee ADD (EMail VARCHAR(25), ICQ VARCHAR(15));&lt;br /&gt;
Describe Employee;&lt;br /&gt;
Select * from Employee;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Altering Database Tables: Drop a Column==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
mysql&amp;gt; CREATE TABLE Employee (&lt;br /&gt;
    -&amp;gt;    Name    VARCHAR(50) PRIMARY KEY NOT NULL,&lt;br /&gt;
    -&amp;gt;    PhoneNo VARCHAR(15) DEFAULT &amp;quot;Unknown Phone&amp;quot;,&lt;br /&gt;
    -&amp;gt;    Age     INT CHECK (Age BETWEEN 20 and 30));&lt;br /&gt;
Query OK, 0 rows affected (0.14 sec)&lt;br /&gt;
mysql&amp;gt; Describe Employee;&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Field   | Type        | Null | Key | Default       | Extra |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Name    | varchar(50) |      | PRI |               |       |&lt;br /&gt;
| PhoneNo | varchar(15) | YES  |     | Unknown Phone |       |&lt;br /&gt;
| Age     | int(11)     | YES  |     | NULL          |       |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
3 rows in set (0.01 sec)&lt;br /&gt;
&lt;br /&gt;
mysql&amp;gt; Select * from Employee;&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
| Name     | PhoneNo       | Age  |&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
| John Doe | Unknown Phone |   31 |&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
1 row in set (0.00 sec)&lt;br /&gt;
mysql&amp;gt; ALTER TABLE Employee DROP COLUMN PhoneNo;&lt;br /&gt;
Query OK, 1 row affected (0.05 sec)&lt;br /&gt;
Records: 1  Duplicates: 0  Warnings: 0&lt;br /&gt;
mysql&amp;gt; Describe Employee;&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
| Field | Type        | Null | Key | Default | Extra |&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
| Name  | varchar(50) |      | PRI |         |       |&lt;br /&gt;
| Age   | int(11)     | YES  |     | NULL    |       |&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
2 rows in set (0.00 sec)&lt;br /&gt;
mysql&amp;gt; Select * from Employee;&lt;br /&gt;
+----------+------+&lt;br /&gt;
| Name     | Age  |&lt;br /&gt;
+----------+------+&lt;br /&gt;
| John Doe |   31 |&lt;br /&gt;
+----------+------+&lt;br /&gt;
1 row in set (0.00 sec)&lt;br /&gt;
&lt;br /&gt;
*/&lt;br /&gt;
Drop TABLE Employee;&lt;br /&gt;
       &lt;br /&gt;
CREATE TABLE Employee (&lt;br /&gt;
   Name    VARCHAR(50) PRIMARY KEY NOT NULL, &lt;br /&gt;
   PhoneNo VARCHAR(15) DEFAULT &amp;quot;Unknown Phone&amp;quot;,&lt;br /&gt;
   Age     INT CHECK (Age BETWEEN 20 and 30));&lt;br /&gt;
Describe Employee;&lt;br /&gt;
INSERT INTO Employee (Name, Phone, Age) VALUES (&amp;quot;Joe Wang&amp;quot;, &amp;quot;666 2323&amp;quot;, 26);&lt;br /&gt;
INSERT INTO Employee (Name, Age) VALUES (&amp;quot;John Doe&amp;quot;, 31);&lt;br /&gt;
Select * from Employee;&lt;br /&gt;
  &lt;br /&gt;
ALTER TABLE Employee DROP COLUMN PhoneNo;&lt;br /&gt;
Describe Employee;&lt;br /&gt;
Select * from Employee;&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Altering Database Tables: Drop Unique Constraint and Add Primary Key==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
mysql&amp;gt; CREATE TABLE Employee (&lt;br /&gt;
    -&amp;gt;    Name    VARCHAR(50) PRIMARY KEY NOT NULL,&lt;br /&gt;
    -&amp;gt;    PhoneNo VARCHAR(15) DEFAULT &amp;quot;Unknown Phone&amp;quot;,&lt;br /&gt;
    -&amp;gt;    Age     INT CHECK (Age BETWEEN 20 and 30));&lt;br /&gt;
Query OK, 0 rows affected (0.04 sec)&lt;br /&gt;
mysql&amp;gt; Describe Employee;&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Field   | Type        | Null | Key | Default       | Extra |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Name    | varchar(50) |      | PRI |               |       |&lt;br /&gt;
| PhoneNo | varchar(15) | YES  |     | Unknown Phone |       |&lt;br /&gt;
| Age     | int(11)     | YES  |     | NULL          |       |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
3 rows in set (0.01 sec)&lt;br /&gt;
mysql&amp;gt; Select * from Employee;&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
| Name     | PhoneNo       | Age  |&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
| John Doe | Unknown Phone |   31 |&lt;br /&gt;
+----------+---------------+------+&lt;br /&gt;
1 row in set (0.00 sec)&lt;br /&gt;
mysql&amp;gt; ALTER TABLE Employee DROP INDEX Name;&lt;br /&gt;
ERROR 1091 (42000): Can&amp;quot;t DROP &amp;quot;Name&amp;quot;; check that column/key exists&lt;br /&gt;
mysql&amp;gt; ALTER TABLE Employee ADD PRIMARY KEY (Name);&lt;br /&gt;
ERROR 1068 (42000): Multiple primary key defined&lt;br /&gt;
mysql&amp;gt; Describe Employee;&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Field   | Type        | Null | Key | Default       | Extra |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
| Name    | varchar(50) |      | PRI |               |       |&lt;br /&gt;
| PhoneNo | varchar(15) | YES  |     | Unknown Phone |       |&lt;br /&gt;
| Age     | int(11)     | YES  |     | NULL          |       |&lt;br /&gt;
+---------+-------------+------+-----+---------------+-------+&lt;br /&gt;
3 rows in set (0.00 sec)&lt;br /&gt;
*/&lt;br /&gt;
Drop TABLE Employee;&lt;br /&gt;
       &lt;br /&gt;
CREATE TABLE Employee (&lt;br /&gt;
   Name    VARCHAR(50) PRIMARY KEY NOT NULL, &lt;br /&gt;
   PhoneNo VARCHAR(15) DEFAULT &amp;quot;Unknown Phone&amp;quot;,&lt;br /&gt;
   Age     INT CHECK (Age BETWEEN 20 and 30));&lt;br /&gt;
Describe Employee;&lt;br /&gt;
INSERT INTO Employee (Name, Phone, Age) VALUES (&amp;quot;Joe Wang&amp;quot;, &amp;quot;666 2323&amp;quot;, 26);&lt;br /&gt;
INSERT INTO Employee (Name, Age) VALUES (&amp;quot;John Doe&amp;quot;, 31);&lt;br /&gt;
Select * from Employee;&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
ALTER TABLE Employee DROP INDEX Name;&lt;br /&gt;
ALTER TABLE Employee ADD PRIMARY KEY (Name);&lt;br /&gt;
Describe Employee;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Alter table: add primary key, foreign key and add column==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
Drop table Books;&lt;br /&gt;
CREATE TABLE Books&lt;br /&gt;
(&lt;br /&gt;
   ID SMALLINT NOT NULL,&lt;br /&gt;
   Name VARCHAR(40) NOT NULL,&lt;br /&gt;
   PubID SMALLINT NOT NULL DEFAULT &amp;quot;Unknown&amp;quot;&lt;br /&gt;
)&lt;br /&gt;
ENGINE=INNODB;&lt;br /&gt;
Describe Books;&lt;br /&gt;
  &lt;br /&gt;
ALTER TABLE Books&lt;br /&gt;
ADD PRIMARY KEY (BookID),&lt;br /&gt;
ADD CONSTRAINT fk_1 FOREIGN KEY (PubID) REFERENCES Publishers (PubID),&lt;br /&gt;
ADD COLUMN Format ENUM(&amp;quot;paperback&amp;quot;, &amp;quot;hardcover&amp;quot;) NOT NULL AFTER Name;&lt;br /&gt;
Describe Books;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Alter table: add unique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
mysql&amp;gt; Drop table Product;&lt;br /&gt;
mysql&amp;gt; CREATE TABLE Product&lt;br /&gt;
    -&amp;gt; (&lt;br /&gt;
    -&amp;gt;    ID SMALLINT UNSIGNED NOT NULL PRIMARY KEY,&lt;br /&gt;
    -&amp;gt;    ModelID SMALLINT UNSIGNED NOT NULL&lt;br /&gt;
    -&amp;gt; );&lt;br /&gt;
Query OK, 0 rows affected (0.05 sec)&lt;br /&gt;
mysql&amp;gt; ALTER TABLE Product&lt;br /&gt;
    -&amp;gt; ADD UNIQUE (ID, ModelID);&lt;br /&gt;
Query OK, 0 rows affected (0.15 sec)&lt;br /&gt;
Records: 0  Duplicates: 0  Warnings: 0&lt;br /&gt;
mysql&amp;gt; Describe Product;&lt;br /&gt;
+---------+----------------------+------+-----+---------+-------+&lt;br /&gt;
| Field   | Type                 | Null | Key | Default | Extra |&lt;br /&gt;
+---------+----------------------+------+-----+---------+-------+&lt;br /&gt;
| ID      | smallint(5) unsigned |      | PRI | 0       |       |&lt;br /&gt;
| ModelID | smallint(5) unsigned |      |     | 0       |       |&lt;br /&gt;
+---------+----------------------+------+-----+---------+-------+&lt;br /&gt;
2 rows in set (0.01 sec)&lt;br /&gt;
&lt;br /&gt;
*/&lt;br /&gt;
Drop table Product;&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE Product&lt;br /&gt;
(&lt;br /&gt;
   ID SMALLINT UNSIGNED NOT NULL PRIMARY KEY,&lt;br /&gt;
   ModelID SMALLINT UNSIGNED NOT NULL&lt;br /&gt;
);&lt;br /&gt;
ALTER TABLE Product&lt;br /&gt;
ADD UNIQUE (ID, ModelID);&lt;br /&gt;
Describe Product;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Alter table: drop primary and foreign key==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
mysql&amp;gt; Drop table Books;&lt;br /&gt;
Query OK, 0 rows affected (0.03 sec)&lt;br /&gt;
mysql&amp;gt; CREATE TABLE Books&lt;br /&gt;
    -&amp;gt; (&lt;br /&gt;
    -&amp;gt;    ID SMALLINT NOT NULL,&lt;br /&gt;
    -&amp;gt;    Name VARCHAR(40) NOT NULL,&lt;br /&gt;
    -&amp;gt;    PubID SMALLINT NOT NULL DEFAULT &amp;quot;Unknown&amp;quot;&lt;br /&gt;
    -&amp;gt; )&lt;br /&gt;
    -&amp;gt; ENGINE=INNODB;&lt;br /&gt;
Query OK, 0 rows affected (0.17 sec)&lt;br /&gt;
mysql&amp;gt; Describe Books;&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
| Field | Type        | Null | Key | Default | Extra |&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
| ID    | smallint(6) |      |     | 0       |       |&lt;br /&gt;
| Name  | varchar(40) |      |     |         |       |&lt;br /&gt;
| PubID | smallint(6) |      |     | 0       |       |&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
3 rows in set (0.00 sec)&lt;br /&gt;
mysql&amp;gt; ALTER TABLE Books&lt;br /&gt;
    -&amp;gt; DROP PRIMARY KEY,&lt;br /&gt;
    -&amp;gt; DROP FOREIGN KEY fk_1,&lt;br /&gt;
    -&amp;gt; DROP COLUMN Format;&lt;br /&gt;
ERROR 1091 (42000): Can&amp;quot;t DROP &amp;quot;PRIMARY&amp;quot;; check that column/key exists&lt;br /&gt;
mysql&amp;gt; Describe Books;&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
| Field | Type        | Null | Key | Default | Extra |&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
| ID    | smallint(6) |      |     | 0       |       |&lt;br /&gt;
| Name  | varchar(40) |      |     |         |       |&lt;br /&gt;
| PubID | smallint(6) |      |     | 0       |       |&lt;br /&gt;
+-------+-------------+------+-----+---------+-------+&lt;br /&gt;
3 rows in set (0.00 sec)&lt;br /&gt;
&lt;br /&gt;
*/&lt;br /&gt;
Drop table Books;&lt;br /&gt;
CREATE TABLE Books&lt;br /&gt;
(&lt;br /&gt;
   ID SMALLINT NOT NULL,&lt;br /&gt;
   Name VARCHAR(40) NOT NULL,&lt;br /&gt;
   PubID SMALLINT NOT NULL DEFAULT &amp;quot;Unknown&amp;quot;&lt;br /&gt;
)&lt;br /&gt;
ENGINE=INNODB;&lt;br /&gt;
Describe Books;&lt;br /&gt;
  &lt;br /&gt;
ALTER TABLE Books&lt;br /&gt;
DROP PRIMARY KEY,&lt;br /&gt;
DROP FOREIGN KEY fk_1,&lt;br /&gt;
DROP COLUMN Format;&lt;br /&gt;
Describe Books;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>