配色: 字号:
第03章
2016-06-21 | 阅:  转:  |  分享 
  
第3章表数据操作3.1界面操作表数据3.1界面操作表数据3.1.1插入记录3.1.2删除记录3.1.3
修改记录3.1.4界面操作表数据的另一种方法3.1.4界面操作表数据的另一种方法3.2.1使用INSERT语句插入
表数据3.2.1使用INSERT语句插入表数据3.2.1使用INSERT语句插入表数据3.2.1使用INSERT语句
插入表数据3.2.1使用INSERT语句插入表数据3.2.1使用INSERT语句插入表数据3.2.2使用DELETE或
TRANCATE语句删除数据3.2.2使用DELETE或TRANCATE语句删除数据3.2.2使用DELETE或TRANC
ATE语句删除数据3.2.2使用DELETE或TRANCATE语句删除数据3.2.2使用DELETE或TRANCATE语句
删除数据3.2.3使用UPDATE语句修改数据3.2.3使用UPDATE语句修改数据3.2.3使用UPDATE语句修改
数据3.2.3使用UPDATE语句修改数据3.2.3使用UPDATE语句修改数据3.2.3使用UPDATE语句修改数据
习题要启动SQLServer,然后启动“企业管理器”,建立与SQLServer的连接,展开需进行操作的表所
在的数据库、展开表。在需操作的表上点击鼠标右键,在弹出的快捷菜单中选择“打开表”?“返回所有行”,如图3.1所示。插
入记录将新记录添加在表尾,可以向表中插入多条记录。操作方法是:将光标定位到当前表尾的下一行,然后逐列输入列的值。例如
,向XS表中增加10条记录,学生样本数据见附录A,如图3.3所示。当表中的某些记录不再需要时,要将其删除。在企业管理器中删除记
录的方法是:第1步在操作表数据的窗口中定位需被删除的记录行,即将当前光标移到要被删除的行,此时该行反相显示,点击鼠标右键,在弹
出的快捷菜单上选择“删除”功能项,如图3.4所示。第2步选择“删除”后,将出现如图3.5所示的确认对话框,点击“是”按钮将删除
所选择的记录,点击“否”按钮将不删除该记录。在企业管理器中修改记录数据的方法是,先定位被修改的记录字段,然后对该字
段值进行修改。例如,将XS表的第2条记录的“总学分”字段的值改为40,如图3.6所示。第1步启动“企业管理器”,建立与SQL
Server的连接,展开需进行操作的表所在的数据库、展开表。在需操作的表上点击鼠标右键,在弹出的快捷菜单中选择“打开表”?“查询
”,如图3.7所示。第2步在所出现的如图3.8所示的界面中点击“运行”按钮,在窗口的最下面的结果集显示窗口中将显示表的所有行,
可以插入、删除和修改记录,操作的方法与在Enterprise中进行相应操作的方法相同。语法格式:INSERT[INTO]{
table_name /表名/
WITH([…n]) /指定表提示,可省略/|v
iew_name /视图名/
|rowset_function_limited
/可以是OPENQUERY或OPENROWSET函数/}{[(column_list)]
/列表/{VALUES
/指定列值的子句/({DEFAULT|NUL
L|expression}[,…n]) /列值的构成形式/|derived_table
/结果集/|exectute_statem
ent /有效的EXECTUTE语句/}}
|DEFAULTVALUES /所有列均取默认值/【例3.1】向XSCJ数据库的表XS中插入如下
的一行:001112罗林琳计算机01/30/19800:0:040可以使用如下的T-SQL语句:US
EXSCJINSERTINTOXSVALUES(‘001112’,’罗林琳’,’计算机’,0,‘1/30
/19800:0:0’,40,NULL)GOVALUES子句中的值可有三种:(1)DEFAULT:指定为该列的默认
值。这要求定义表时必须指定该列的默认值。(2)NULL:指定该列为空值。(3)expression:可以是一个常量、变
量或一个表达式,其值的数据类型要与列的数据类型一致。注意表达式中不能有SELECT及EXECUTE语句。该语句执行的结果如图3.
9所示。用SELECT语句进行查询,可以发现表中已经增加了学号为“001112”这一行,如图3.10所示。【例3
.2】用如下的CREATE语句建立表XS1:CREATETABLEXS1( numchar(6)NOTNU
LL, namechar(8)NOTNULL, speialitychar(10)NULL)
用如下的INSERT语句向XS1表中插入数据:INSERTINTOXS1SELECT学号,
姓名,专业名 FROMXS WHERE专业名=’计算机’上面这条INSERT语句的功能是:将XS表
中专业名为‘计算机’的各记录的学号、姓名和专业名列的值插入到XS1表的各行中。用如下的SELECT语句进行查询看插入结果:SEL
ECTFROMXS1使用INSERT向KC表输入附录A的样本数据记录后,如图3.xx所示。使用INSERT向XS_KC
表输入附录A的数据样本记录后,如图3.xx所示。在T-SQL语言中,删除数据可以使用DELETE语句或TRANCATE
TABLE语句来实现。(1)使用DELETE语句删除数据语法格式:DELETE[FROM]{table_na
meWITH([...n])/从表中删除数据/|view_n
ame /从视图删除数据/|rowset_function_limited/可
以是OPENQUERY或OPENROWSET函数/}[FROM{}[,…n]] /从
table_source删除数据/[WHERE{ /指定条件/|{
[CURRENTOF{{[GLOBAL]cursor_name}|cursor_variable_name}]}
/有关游标的说明/}][OPTION(ery_hint>[,…n])] /使用优化程序/说明:FROM子句:用于说明从何处删除数据。可以从四种类型
的对象中删除数据:(1)表:由table_name指定要从其中删除数据的表名,关键字WITH指定目标表所允许的一个或多个表提
示。(2)视图:由view_name指定要从其中删除数据的视图名,要注意该视图必须可以更新,并且正确引用了一个基本表。(3
)OPENQUERY和OPENROWSET函数:由rowset_function_limited指定。(4)table_
source:将在介绍SELECT语句时详细讨论。【例3.3】将XSCJ数据库的XS表中总学分小于39的行删除,使用如下的T-S
QL语句:USEXSCJDELETEFROMXS WHERE总学分<39GO该语句执行的结果如图3.11所示
。用SELECT语句进行查询,可以发现表中学号为“001102”和“001105”两行已被删除,如图3.12所示。
【例3.4】将XSCJ数据库的XS表中备注为空的行删除(实际不做操作)。DELETEFROMXS WHERE备注
ISNULL将XSCJ数据库的XS表中的所有行均删除(实际不做操作)。DELETEXS2.使用TRUNCATET
ABLE语句删除表数据使用TRUNCATETABLE语句将删除指定表中的所有数据,因此也称其为清除表数据语句。语法格式:T
RUNCATETABLEname在T-SQL中,UPDATE语句可以用来修改表中的数据行。语法格式:UPDATE{
table_nameWITH([...n])/修改表数据
/|view_name /修改视图数据/|rowset_function_limit
ed /可以是OPENQUERY或OPENROWSET函数/}SET /赋予新值/{
column_name={expression|DEFAULT|NULL}/为列重新指定值/|@var
iable=expression /指定变量的新值/|@variable=colum
n=expression /指定列和变量的新值/}[,…n]{{[FROM{ce>}[,…n]] /修改table_source数据[WHEREdition>] /指定条件/}|[WHERECURRENTOF /有关游标的说明/
{{[GLOBAL]cursor_name}|cursor_variable_name}]}
[OPTION([,…n])] /使用优化程序/可以对四种类型
的对象修改数据:(1)表:由table_name指定要从其中删除数据的表名,关键字WITH指定目标表所允许的一个或多个表提示
。(2)视图:由view_name指定要从其中删除数据的视图名,要注意该视图必须可以更新,并且正确引用了一个基本表。(3)
OPENQUERY和OPENROWSET函数:由rowset_function_limited指定。(4)table_s
ource:将在介绍SELECT语句时详细讨论。【例3.5】将XSCJ数据库的XS表中学号为001110的学生的备注列值改为“三
好生”。USEXSCJUPDATEXS SET备注=”三好生” WHERE学号=001110GO该语
句的执行结果如图3.13所示。用SELECT语句进行查询,可以发现表中学号为“001110”的行的备注字段值已被修改,如图3.14所示。【例3.6】将XS表中的所有学生的总学分都增加10。将姓名为“罗林琳”的同学的专业改为“通信工程”,备注改为“转专业学习”,学号改为001241。UPDATEXS SET总学分=总学分+10GOUPDATEXS SET专业=‘通信工程’, 备注=‘转专业学习’, 学号=‘001241’ WHERE姓名=‘罗林琳’GO企业管理器操作如图3.15所示。
献花(0)
+1
(本文系信检彭博海...首藏)