编辑3:我在关注Head First SQL,据说我们可以使用诸如等关键字First
等Second
。@StanMcgeek 澄清说,我只能使用First
,Last
和After
。
在读者对否决投票变得友好之前,我想提一下
- 我知道列重新排列通常只是一个美学问题。
- 我这样做只是为了学习目的
话虽这么说,这就是我想要做的:
hooptie
是一个表,有一些值,我想将其重命名car_table
并添加更多列。下面是重命名的hooptie
,以及我尝试添加和重新排列几列的顺序。输出被-tee
'd 到一个文本文件中。文字比截图更容易发布:)
--------------
select * from car_table
--------------
+--------+------+----------+----------+-----------+
| color | year | make | mo | howmuch |
+--------+------+----------+----------+-----------+
| silver | 1998 | Porsche | Boxter | 17992.539 |
| NULL | 2000 | Jaguar | XJ | 15995.000 |
| red | 2002 | Cadillac | Escalade | 40215.898 |
+--------+------+----------+----------+-----------+
--------------
alter table car_table
add column car_id int not null auto_increment first,
add column VIN varchar(16) second,
modify make varchar(20) third,
change mo model varchar(20) fourth,
modify color varchar(20) fifth,
modify year varchar(4) sixth,
change howmuch price decimal(7,2) last
--------------
做完上述改动后,我又做了一个select * from car_table
,但桌子保持不变。我想随便说first
,second
等等并third
没有真正削减它。谁能解释这里发生了什么?
Edit1:我收到的错误消息说:
ERROR 1064 (42000): 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 'second,
我不太喜欢mysql错误消息..它们对我来说似乎有点模糊。
Edit2:我使用了类似的关键字After
,我知道它有效。我想了解first
, second
etc 键是如何工作的。
ps:我正在关注 Head-First-SQL 书,数据也是从那里获取的。