1 取得表格资讯
1.1 DESCRIBE指令
「DESCRIBE」是MySQL资料库提供的指令,它只能在MySQL资料库中使用,这个指令可以取得某个表格的结构资讯,它的语法是这样的:
你在MySQL的工具中执行「DESC cmdev.dept」指令以后,MySQL会传回「cmdev.dept」表格的结构资讯:
1.2 栏位顺序
每一个表格在设计的时候,都会决定它有哪一些栏位,和所有栏位的详细设定。 另外也会决定表格中的栏位顺序,知道表格栏位顺序在接下来的讨论中是很重要的:
注:如何建立一个新的表格会在「第八章、表格与索引」中讨论。
2 新增
2.1 基础新增叙述
新增资料到资料库的表格中使用「INSERT」叙述,下列是这个叙述的基本语法:
使用这个语法新增纪录的时候,要特别注意表格的栏位个数与顺序,下列的新增叙述会新增一笔部门的纪录到「cmdev.dept」表格中:
除了明确的指定新增纪录的每一个栏位资料外,你也可以使用「DEFAULT」关键字,让MySQL为你写入在设计表格的时候,为栏位指定的预设值。 下列的新增叙述同样会新增一笔部门的纪录到「cmdev.dept」表格中,不过部门的所在位置(location)栏位值指定为使用预设值:
使用这种语法新增纪录的时候,如果资料个数与栏位个数不一样的话,就会发生错误:
资料个数虽然没有错,顺序却不对了,也有可能会造成错误:
新增叙述的另外一种语法,就提供比较灵活的新增纪录方式,你可以自己指定新增纪录的栏位个数和顺序:
在你额外为这个新增叙述指定栏位以后,指定储存资料的时候就要依照自己指定的栏位个数与顺序:
如果没有依照自己指定的栏位个数与顺序,就会发生错误:
因为这种新增叙述的语法可以自己指定栏位的个数与顺序,所以你只要指定写入栏位的资料就可以了。 不过要特别注意下列两种语法的差异:
也因为这样的规定,所以下列这个新增叙述在语法上虽然没有错误,如果违反表格设计上的规定,同样会造成错误:
这种新增叙述的语法还有一个比较特别的用法,如果你要新增的纪录,所有栏位的值都要使用预设值,就可以使用下列的写法。 不过要特别注意下列的新增叙述执行以后会造成错误,因为「deptno」与「dname」栏位的预设值是「NULL」,可是它们又不能储存「NULL」:
下列是新增叙述的第三种语法:
这种语法只是提供你另外一种新增纪录的写法,下列两个新增叙述的效果是一样的:
点击阅读全文
更多参考:
MySQL 超新手入门教程系列
MySQL入门 (一) : 资料库概论与MySQL的安装
MySQL入门 (二) : SELECT 基础查询
MySQL入门 (三) : 运算式与函式
MySQL入门 (四) : JOIN 与UNION 查询
MySQL入门 (六) : 字元集与资料库
本文转自: MySQL入门 (五) : CRUD 与资料维护