第 15 章 · 第二节
写一段代码要用到的三样东西
注释、定界符、语句块,先把这三样弄清楚。

重 点
这一节没有难点,可定界符不弄清楚,后面一个过程都建不起来。
知道更多
第二节到第六节都是零件铺,学完才有本钱去写像样的存储过程。
想一想
一句一句敲的时候,这三样为什么都用不上?
注释、定界符、语句块,先把这三样弄清楚。

这一节没有难点,可定界符不弄清楚,后面一个过程都建不起来。
第二节到第六节都是零件铺,学完才有本钱去写像样的存储过程。
一句一句敲的时候,这三样为什么都用不上?
这一小节把写代码的基本约定交代完。

三样里定界符最要紧,另外两样看一眼就会,它却能把人卡住半节课。
这三样在任何编程语言里都有对应的东西,只是 SQL 的写法特别一点。
解释代码在干什么,或者把暂时不用的语句挡住。

注释不参与执行。把一段代码前面加上注释符,它就暂时不跑了。
书页边上用铅笔写的批注,翻书的人看得见,书本身不会因此改内容。
两条横线后面一定要跟一个空格。

| 写法 | 管到哪 |
|---|---|
| -- 加空格 | 到行尾 |
| # | 到行尾 |
| /* … */ | 中间全是 |
两条横线后面漏了空格,MySQL 不当注释,当减号,一定要留那个空格。
为什么 -- 后面非要一个空格不可?
一段代码里有好几个分号,会被拦腰截断。

DELIMITER $$ 把结束符临时换掉,中间的分号就不再触发执行。
捆起来之后,要么全做,要么全不做。

语句块只活在存储过程和函数里,单独敲一段 BEGIN…END,MySQL 不认。
为什么单独一段 BEGIN…END 跑不了?