《SQL项目实例教程》-模块四_第1页
《SQL项目实例教程》-模块四_第2页
《SQL项目实例教程》-模块四_第3页
《SQL项目实例教程》-模块四_第4页
《SQL项目实例教程》-模块四_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

模块四数据库表数据操作任务描述知识要点返回任务描述数据库用表来存储和管理数据,要实现数据的存储,必须向表中添加数据;要实现数据的管理,也需要经常修改和删除表中数据。本模块主要实现“ebook”数据库中各数据表中数据的添加、修改和删除操作。SQLServer为了保证数据的安全性,只有系统管理员(sa)、数据库所有者(dbo)、数据库对象的所有者及被授予权限的用户才能对数据表中的数据进行添加、修改和删除操作。任务1添加数据任务1.1向“AdminUser”表中添加数据下一页返回任务描述方法一:使用SQLServerManagementStudio添加数据①启动SQLServerManagementStudio,在“对象资源管理器”窗口中,展开“数据库”节点,选择对应的数据库“ebook”。②展开“ebook”节点,再展开“表”节点,右击要添加数据的“AdminUser”表,在弹出的快捷菜单中选择“编辑前200行”命令,就会打开“查询设计器”的结果窗口,如图4.1所示。③在“查询设计器”的表中可以输入新记录,也可以对已有数据进行修改和删除。上一页下一页返回任务描述在此,向“AdminUser”表中输入数据,如图4.2所示。方法二:使用INSERT语句添加数据在查询编辑器中,输入以下T-SQL命令添加数据。上一页下一页返回任务描述任务1.2向“BookType”、“Book”、“OrderInfo”、“OrderDe⁃tail”添加数据根据项目实践需要,向“ebook”数据库的“BookType”、“Book”、“OrderInfo”、“Or⁃derDetail”各表中添加部分数据,代码如下:/∗向“BookType”表添加数据∗/上一页下一页返回任务描述上一页下一页返回任务描述/∗向“Book”表添加数据∗/上一页下一页返回任务描述上一页下一页返回任务描述上一页下一页返回任务描述/∗向“OrderInfo”表添加数据∗/上一页下一页返回任务描述/∗向“OrderDetail”表添加数据∗/上一页下一页返回任务描述上一页下一页返回任务描述任务1.3在“Book”表中新添加一行记录,指定所有字段值使用SQLServerManagementStudio添加数据的方法之前已经阐述过了,实现任务需求的INSERT语句如下:上一页下一页返回任务描述执行以上代码,向“Book”表中添加一行新的记录,表中数据如图4.3所示。以上INSERT语句向表中添加数据时,给出了表中的全部字段,值列表中数据值的数量、顺序与字段列表匹配,数据值的数据类型与对应列的数据类型兼容。当为表中全部字段赋值时,字段列表可以省略,以下为省略字段列表的INSERT语句:上一页下一页返回任务描述任务1.4在“Book”表中新添加一行记录,指定部分字段值在“Book”表中添加一行记录,部分字段值如下:isbn为“9787040379938”,bookName为“JSP动态Web技术实例教程”,author为“聂哲”,publisher为“高等教育出版社”,price为“29.8”。实现任务需求的INSERT语句如下:上一页下一页返回任务描述执行以上代码,运行结果如图4.4所示。以上代码经分析检查,在语法上没有错误,出错的原因在于“Book”表中的“bookTy⁃peId”字段不允许为空。向表中添加数据时,当省略表中的某些列时,这些列值一定要遵循数据完整性要求。代码修改后如下:上一页下一页返回任务描述修改后的代码成功执行,“Book”表数据如图4.5所示。在新添加的数据记录中,未指定数据值的“picture”字段和“description”字段允许为空,默认取值为NULL。任务2修改数据任务2.1将username为“admin1”的管理员密码修改为“ad1234”方法一:使用SQLServerManagementStudio修改数据上一页下一页返回任务描述使用SQLServerManagementStudio修改数据的操作与添加数据的操作相同。在如图4.2所示的“查询设计器”中,对“AdminUser”表中需要修改的数据根据数据修改要求直接进行修改即可。方法二:使用UPDATE语句修改数据在“查询编辑器”窗口中输入如下语句:USEebook上一页下一页返回任务描述UPDATE子句指定修改的数据表为“AdminUser”,SET子句指定修改的字段及其新的数据值,WHERE子句指定数据修改条件。执行以上语句,执行结果如图4.6所示。执行结果显示“1行受影响”,表明UPDATE语句更新了一行数据。查看AdminUser表,可以看到已完成数据的修改操作。任务2.2将isbn为“9787111470953”的书籍价格修改为“25”使用SQLServerManagementStudio修改数据的方法之前已经阐述过了,实现任务需求的UPDATE语句如下:上一页下一页返回任务描述UPDATE子句指定修改的数据表为“Book”,SET子句指定修改的字段及其新的数据值,WHERE子句指定数据修改条件。执行以上代码,完成数据修改操作。任务2.3将isbn为“9787040379938”的书籍picture修改为“15.jpg”、description修改为“全国高职高专教育规划教材”上一页下一页返回任务描述实现任务需求的UPDATE语句如下:执行以上代码,完成数据修改操作,运行结果如图4.7所示。本任务中通过SET子句同时修改了两个字段的值。任务2.4将“英语”类书籍的价格修改为原价的9折实现任务需求的UPDATE语句如下:上一页下一页返回任务描述本任务中修改Book表数据的操作涉及了BookType表,通过FROM子句指定所涉及的数据表及其连接条件。执行以上语句,执行结果显示“2行受影响”,表明UPDATE语句更新了2行数据,即修改了两本英语类书籍的价格。查看Book表,可以看到已完成数据的修改,如图4.8所示。上一页下一页返回任务描述考虑到项目实践的需要,将“英语”类书籍的价格修改回原价。同时给出数据表连接的另一种方法。任务2.5将“AdminUser”表中所有管理员用户的密码修改为“123456”实现任务需求的UPDATE语句如下:上一页下一页返回任务描述UPDATE语句缺省WHERE子句时用于修改表中所有数据行。执行以上代码,“Admin⁃User”表中的所有管理员用户密码均被修改,如图4.9所示。考虑到项目实践的需要,将“AdminUser”表中管理员用户的密码修改回原来的数据值。上一页下一页返回任务描述任务3删除数据上一页下一页返回任务描述任务3.1将isbn为“9787111470953”和“9787040379938”的书籍信息删除方法一:使用SQLServerManagementStudio删除数据在SQLServerManagementStudio中,打开“ebook”数据库中“Book”表的“查询设计器”窗口,如图4.10所示。右击要删除的记录,在弹出的如图4.11所示的对话框中选择“是”,完成指定数据的删除。方法二:使用DELETE语句删除数据在“查询编辑器”窗口中输入如下语句:上一页下一页返回任务描述DELETE子句指定删除数据的数据表为“Book”,WHERE子句指定数据删除条件。任务3.2将“计算机”类的价格高于50元的所有书籍信息删除上一页下一页返回任务描述使用SQLServerManagementStudio删除数据的方法之前已经阐述过了,实现任务需求的DELETE语句如下:本任务中删除Book表数据的操作涉及了BookType表,通过FROM子句指定所涉及的数据表及其连接条件,WHERE子句限定了多重删除条件。上一页下一页返回任务描述执行以上语句,执行结果显示“0行受影响”,表明未找到符合条件的记录。任务3.3删除“OrderInfo”表中2号订单信息实现任务需求的DELETE语句如下:DELETE子句指定删除数据的数据表为“OrderInfo”,WHERE子句指定数据删除条件。执行以上代码,运行结果如图4.12所示。上一页下一页返回任务描述程序运行出错的原因在于数据删除操作违背了之前在“OrderDetail”表中创建的外键约束,“OrderDetail”表中的“orderId”字段须引用“OrderInfo”表中“orderId”字段的值。所以,删除数据操作必须遵循数据完整性要求,只有当要删除的数据不被其他表引用时,才能删除。任务3.4将OrderInfo表中的记录清空方法一:使用SQLServerManagementStudio删除数据上一页下一页返回任务描述在SQLServerManagementStudio中,打开“ebook”数据库中“OrderInfo”表的“查询设计器”窗口,删除表中所有记录。具体操作方法在任务3.1中已经做过详细阐述。方法二:使用DELETE语句清空数据方法三:使用TRUNCATETABLE语句清空数据上一页下一页返回任务描述任务4导入/导出数据任务4.1导出数据将“ebook”数据库中“Book”表的数据导出到Excel文件book.xls中。操作步骤:①启动SQLServerManagementStudio,在“对象资源管理器”窗口中选择服务器,展开“数据库”节点,右击“ebook”数据库,在弹出的快捷菜单中选择“任务”→“导出数据”(如图4.13所示),打开“SQLServer导入和导出向导”对话框,如图4.14所示。上一页下一页返回任务描述②单击“下一步”命令按钮,进入“选择数据源”界面,如图4.15所示。在“数据源”下拉列表框中选择“SQLServerNativeClient10.0”,指定数据源为SQLServer数据;在“服务器名称”下拉列表框中选择或输入数据库服务器;选择适当的身份验证方式;在“数据库”下拉列表框中选择或输入数据库名称,在此选择“ebook”数据库。③单击“下一步”命令按钮,进入“选择目标”界面,如图4.16所示。在“目标”下拉列表框中选择目标表类型,指定转换后的数据格式,在此选择“MicrosoftExcel”。单击“浏览”按钮,在打开的对话框中创建(或选择)Excel文件book.xls。上一页下一页返回任务描述④单击“下一步”命令按钮,进入“指定表复制或查询”界面,指定传输数据的方式,如图4.17所示。可以选择复制源数据库中现有表或视图的全部数据,也可以选择编写TSQL查询语句来指定要传输的数据。⑤单击“下一步”命令按钮,进入“选择源表和源视图”界面,选择要复制的表和视图,如图4.18所示。其中列出了源数据库中所有的表和视图,可以选择一项或多项要复制的表和视图,这里选择“Book”表。上一页下一页返回任务描述选中表和视图后,可以单击“编辑映射”按钮,在打开的“列映射”对话框中,对表和视图进行转化设置,如删除目标表中的记录设置等;单击“预览”按钮,可以查看选择表转换后的结果。这里选择按默认设置进行转换。⑥单击“下一步”命令按钮,进入“查看数据类型映射”界面,查看源表中数据类型映射到目标中的数据类型的方式,同时选择向导处理转换问题的方式,如图4.19所示。⑦单击“下一步”命令按钮,进入“保存并运行包”界面,勾选“立即运行”复选框。上一页下一页返回任务描述⑧单击“下一步”命令按钮,进入“完成该向导”界面,如图4.20所示。单击“完成”命令按钮,系统将开始执行复制数据的操作。执行成功后将弹出如图4.21所示的“执行成功”界面,单击“关闭”命令按钮,即完成本次数据导出操作。⑩打开“D:\book.xls”文件,查看“Book”表中数据是否被正确导出。任务4.2导入数据将book.xls中“Book”表的数据导入“ebook”数据库中的“Book副本”数据表。操作步骤:上一页下一页返回任务描述导入数据与导出数据的方法基本相似,也是使用“导入和导出向导”,下面简单介绍导入数据的过程。①启动SQLServerManagementStudio,在“对象资源管理器”窗口中选择服务器,展开“数据库”节点,右击“ebook”数据库,在弹出的快捷菜单中选择“任务”→“导入数据”,打开“SQLServer导入和导出向导”对话框。②单击“下一步”命令按钮,进入“选择数据源”界面。在“数据源”下拉列表框中选择“MicrosoftExcel”;单击“浏览”按钮,在打开的对话框中选择book.xls。上一页下一页返回任务描述若导入的Excel表格中的首行是列的名称,则勾选“首行包含列名称”复选框,如图4.22所示。③单击“下一步”命令按钮,进入“选择目标”界面。在“目标”下拉列表框中选择“SQLServerNativeClient10.0”,选择服务器、身份验证方式和数据库“ebook”。④单击“下一步”命令按钮,进入“指定表复制或查询”界面,选择“复制一个或多个表或视图的数据”。⑤单击“下一步”命令按钮,进入“选择源表和源视图”界面,如图4.23所示。上一页下一页返回任务描述勾选“Book”表复选框,并将“目标”名称修改为“Book副本”。⑥单击“下一步”命令按钮,进入“查看数据类型映射”界面。⑦单击“下一步”命令按钮,进入“保存并运行包”界面,勾选“立即运行”复选框。⑧单击“下一步”命令按钮,进入“完成该向导”界面。单击“完成”命令按钮,系统开始执行复制数据的操作。上一页下一页返回任务描述执行成功后弹出“执行成功”界面,单击“关闭”命令按钮,完成本次数据导入操作。⑨打开SQLServerManagementStudio,在“对象资源管理器”窗口中刷新“ebook”数据库,查看数据是否被正确导入“Book副本”数据表。上一页返回知识要点一、INSERT语句向表中添加数据可以使用INSERT语句。其中:下一页返回知识要点•INTO是一个可选的关键字,可以将它用在INSERT和目标表之间。•table_name是将要接收数据的表名。•column_list是要在其中插入数据的字段列表,必须用圆括号括起来,并且用英文逗号将各个字段进行分隔,字段顺序可以不同于表中顺序。如果添加数据时表中的全部字段都接收数据,则column_list字段列表可以省略。当省略表中的某些列时,这些列值的确定原则如下:①具有IDENTITY标识符属性的列,其值由系统自动计算得到。上一页下一页返回知识要点②数据类型为timestamp的列,系统自动赋值。③若为计算列,则使用计算值。④已设置默认值的列,其值为默认值。⑤允许列值为空的列,其值为空。•VALUES用于引入要添加的数据值的列表。•value_list用于指定各字段需要添加的数据值列表,与column_list中的字段列表在列数、列序都必须保持一致。若之前column_list省略,value_list为表中所有字段的值列表。上一页下一页返回知识要点值列表必须用圆括号括起来,并且用英文逗号将各个数据值进行分隔。数据值可以有以下三种形式:①使用DEFAULT关键字:表示插入的值为该列的默认值,这要求建表时已经为该列指定了默认值。此外,对于IDENTITY属性列和timestamp类型列,列值位置也应使用DEFAULT关键字表示。②使用NULL关键字:表示插入的值为空,这要求建表时设置该列的属性允许为空。③使用表达式形式:可以是常量、变量或表达式,其值的数据类型要与列的数据类型保持一致,并且输入字符型数据和时间日期型数据时要用单引号括起来。上一页下一页返回知识要点二、UPDATE语句随着数据库系统的实际运行,某些数据可能会发生变化,这时就需要对表中的数据进行修改。修改表数据可以使用UPDATE语句。UPDATE语句的语法格式:上一页下一页返回知识要点其中:•table_name是需要修改数据的表的名称。•SET用于指定要修改的列或变量名称的列表。•column_name用于指定要修改数据的列的名称。•expression|DEFAULT|NULL是列值表达式。•FROM子句用于指定数据修改涉及的数据来源。•WHERE子句用于指定数据修改的条件。上一页下一页返回知识要点三、DELETE语句、TRUNCATETABLE语句随着数据库系统的实际运行,表中可能产生一些无用的数据。这些数据不仅占用空间,还影响查询的速度,应该及时删除它们。删除表数据可以使用DELETE语句和TRUNCATETABLE语句。1.DELETE语句的语法格式上一页下一页返回知识要点其中:•table_name是需要删除数据的表的名称。•FROM子句用于指定数据删除涉及的数据来源。•WHERE子句用于指定数据删除的条件。2.TRUNCATETABLE语句的语法格式TRUNCATETABLEtable_name其中:•TRUNCATETABLE为关键字。•table_name为要删除所有记录的表名。上一页下一页返回知识要点TRUNCATETABLE语句用于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论