表创建以后,只是一个空表,若想实现数据存储,则应向表中添加数据。在使用和维护数据库的过程中随时要对数据做添加、修改、删除、查询操作。
下面将以“teaching”数据库为例分别使用对象资源管理器和T⁃SQL语句实现数据操作。经过前几小节的操作,现在“teaching”数据库中的表及结构如下。
专业(专业号,专业名)
学生(学号,姓名,性别,民族,出生日期,专业号)
教师(教师号,姓名,性别,民族,出生日期,职称,部门,备注)
课程(课程号,课程名,学时数,课程性质,类别,教师号)
成绩(学号,课程号,成绩)
1.使用对象资源管理器进行数据操作
【例3-37】 使用对象资源管理器在“专业”表中进行数据操作。
1)查看数据。在“对象资源管理器”窗格中展开“数据库”结点,选择相应的数据库,展开表结点。右击要查看的“专业”表,在弹出的快捷菜单中选择“打开表”命令,就会打开表格形式的“结果”窗格,如图3-37所示。
2)添加数据。在表中“*”号所在行可以输入新记录,如果输入数据的单元格右侧显示“叹号”则表示数据还未提交给数据库。添加的数据如图3-38所示。
图3-37 “结果”窗格
图3-38 向表中输入数据
3)修改数据。单击“Zyh”为“13”的单元格,选中“13”,直接输入“21”。
4)删除数据。用鼠标右键单击“Zyh”为“32”的单元格所在行左侧的灰色区域,在弹出的快捷菜单中选择“删除”命令,将出现如图3-39所示的对话框,单击“是”按钮删除该行数据。
图3-39 删除数据对话框
对数据的操作更常用的是在查询分析器使用T⁃SQL语句。下面将分别介绍数据的添加、修改、删除和最简单的一个查询的语法。
2.使用T⁃SQL语句进行数据操作
(1)查看数据
使用T⁃SQL语言查看表中记录的命令是SELECT。关于SELECT的更详细语法将在第4章介绍,此处仅给出查询单个表中所有记录的最简单语法,语法格式如下。
【例3-38】 使用T⁃SQL语句查看“专业”表中数据。
在“查询”窗格其中输入如下代码。
执行代码将看到查询结果如图3-40所示。
图3-40 显示“专业”表数据
(2)添加数据
使用T⁃SQL语言向表中添加记录的命令是INSERT,语法格式如下。
在上述数据参数中
●table_name:将要接收数据的表名称。
●column_list:要在其中插入数据的一列或多列的字段名表,字段名间用逗号间隔。
●VALUES:引入要插入的数据值的列表。
●DEFAULT:强制列值为默认值。
●expression:一个常量、变量或表达式。
使用INSERT语句可以实现一次向表中追加一行数据。注意column_list字段列表和VALUES后的值列表的数据类型要一一对应,如果按照定义表时的属性顺序对所有字段给值,则可以省略column_list字段列表。
【例3-39】 使用T⁃SQL语句向“学生”表中添加如图3-41所示数据。
图3-41 “学生”表数据
在“查询”窗格中输入如下代码。
注意:
char、varchar和datetime型数据在SQL语句中的值外加单引号。“专业号”字段值必须是在“专业”表中已有的“专业号”字段值,否则将违反约束,SQL Server将拒绝添加数据。(www.xing528.com)
【例3-40】 使用T-SQL语句向“教师”表中添加如图3-42所示数据。
图3-42 “教师”表数据
在“查询”窗格中输入如下代码。
注意:
如果要输入空值则应在SQL语句中不列出该字段或者向该字段中输入NULL。
【例3-41】 使用T-SQL语句向“课程”表中添加如图3-43所示数据。
图3-43 “课程”表数据
在“查询”窗格中输入如下代码。
注意:
对于int型数据可直接输入数字。“课程性质”如果输入默认值则在SQL语句中直接写DEFAULT。“学时数”字段应输入[10,60]范围内的值,否则将违反CHECK约束;“类别”字段输入值应为“基础课”、“专业课”或“选修课”,否则将违反CHECK约束;“教师号”字段值必须是在“教师”表中已有的“教师号”字段值,否则将违反约束。如果违反约束,SQL Server将拒绝添加数据。
【例3-42】 使用T-SQL语句向“成绩”表中添加如图3-44所示数据。
在“查询”窗格中输入如下代码。
图3-44 “成绩”表数据
注意:
“成绩”字段值自动实现四舍五入。在表中不能存在“学号”和“课程号”组合完全相同的记录,否则将违反主键约束;“学号”字段值必须是在“学生”表中已有的“学号”字段值,否则将违反外键约束;“课程号”字段值必须是在“课程”表中已有的“课程号”字段值,否则将违反外键约束。如果违反约束,SQL Server将拒绝添加数据。
(3)修改数据
使用T-SQL语言修改表中记录值的命令是UPDATE,语法格式如下。
上述数据参数中:table_name为要修改数据的表名,search_condition为修改条件。
【例3-43】 使用T-SQL语句将“成绩”表中学号是09201003的学生所选修的课程号为4的课程成绩改为70分。
在“查询”窗格中输入如下代码。
执行代码,打开“Cj”表,将看到最后一行记录的成绩为70。
【例3-44】 使用T-SQL语句将“成绩”表中课程号为4的所有学生的成绩都加1分。
在“查询”窗格中输入如下代码。
执行代码,打开“Cj”表,将看到课程号为4的3个学生的成绩都加了1分。
(4)删除数据
使用T-SQL语言删除表中记录的命令是DELETE,语法格式如下。
其中table_name为要删除数据的表名,search_condition为删除条件。
注意:
如果要删除表中所有行,可以使用TRUNCATETABLE语句,因为此操作不需要写入事务日志,它比DELETE命令要快,其语法格式如下。
【例3-45】 使用T-SQL语句删除“学生”表中专业号为31的学生记录。
在“查询”窗格中输入如下代码。
执行代码,打开“Xs”表,将看到专业号为31的3个学生记录被删除。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。