资源预览内容
第1页 / 共36页
第2页 / 共36页
第3页 / 共36页
第4页 / 共36页
第5页 / 共36页
第6页 / 共36页
第7页 / 共36页
第8页 / 共36页
第9页 / 共36页
第10页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
北京城市网尚科技发展有限公司Beijing Citynet Technology Development Co., Ltd 数据库应用开发 2 All rights reserved 2004,Beijing CItynet Technology一、一、 SQL server SQL语言概要语言概要二、如何读懂数据库设计图二、如何读懂数据库设计图三、如何使用三、如何使用 SQL Server企业管理器、查询分析器企业管理器、查询分析器四、四、 .NET中对于数据库访问提供的对象(熟悉中对于数据库访问提供的对象(熟悉DataSet、 DataTable、 DataRow对象)对象)五、使用五、使用 Sql Helper并创建并创建 DBAccess实现数据库封实现数据库封装装六、如何使用六、如何使用 DBAccess提供的方法提供的方法目录 3 All rights reserved 2004,Beijing CItynet Technology一、 SQL语言概要一、数据类型一、数据类型二、二、 SQL语句语句 4 All rights reserved 2004,Beijing CItynet Technology数据类型Char和 Varcharl char和 varchar的长度都在 1到 8000之间,它们的区别在于 char是定长字符数据,而 varchar是变长字符数据。l 所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空格在其后面填充,使长度达到相应的长度;而变长字符数据则不会以空格填充。l text存储可变长度的非 Unicode数据,最大长度为 231-1(2,147,483,647)个字符。 5 All rights reserved 2004,Beijing CItynet Technology数据类型Nchar、 Nvarcharl nvarchar、 nchar从名称上看只是多了个字母 “n”,它表示存储的是 Unicode数据类型的字符。l 字符中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节存储,英文与汉字同时存在时容易造成混乱, Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。 nchar、 nvarchar的长度是在 1到 4000之间。和 char、varchar比较: nchar、 nvarchar则最多存储 4000个字符,不论是英文还是汉字;而 char、 varchar最多能存储 8000个英文, 4000个汉字。l 可以看出使用 nchar、 nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。 6 All rights reserved 2004,Beijing CItynet Technology数据类型DateTimel datetime:从 1753年 1月 1日到 9999年 12月 31日的日期和时间数据,精确到百分之三秒。 7 All rights reserved 2004,Beijing CItynet Technology数据类型BigInt、 Int、 SmallInt、 TinyIntl bigint:从 -263(-9223372036854775808)到 263-1(9223372036854775807)的整型数据。 int:从 -231(-2,147,483,648)到 231-1(2,147,483,647)的整型数据。 smallint:从 -215(-32,768)到 215-1(32,767)的整数数据。 tinyint:从 0到 255的整数数据。 Bitl bit: 1或 0的整数数据。 8 All rights reserved 2004,Beijing CItynet Technology数据类型Decimal/Numeric、 Floact、 Reall decimal和 numeric 这两种数据类型是等效的。都有两个参数: p(精度)和 s(小数位数)。指定小数点左边和右边可以存储的十进制数字的最大个数, p必须是从 1到 38之间的值。 s指定小数点右边可以存储的十进制数字的最大个数, s必须是从 0到 p之间的值,默认小数位数是0。 l float和 real float:从 -1.79308到 1.79308之间的浮点数字数据。 real:从 -3.4038到 3.4038之间的浮点数字数据。在 SQL Server中,real的同义词为 float(24)。 9 All rights reserved 2004,Beijing CItynet TechnologySQL语句l Select语句语句l Insert语句语句l Update语句语句l Delete语句语句l 其他常用的其他常用的 SQL语句语句 10 All rights reserved 2004,Beijing CItynet TechnologySELECT ALL | DISTINCT FROM ,n WHERE Partial Syntax1 SELECT Statementl Select Listl WHEREl FROM 11 All rights reserved 2004,Beijing CItynet Technology指定 列 employeeid lastname firstname title1 Davolio Nancy Sales Representative2 Fuller Andrew Vice President, Sales3 Leverling Janet Sales Representative4 Peacock Margaret Sales Representative5 Buchanan Steven Sales Manager6 Suyama Michael Sales Representative7 King Robert Sales Representative8 Callahan Laura Inside Sales Coordinator9 Dodsworth Anne Sales RepresentativeUSE northwindSELECT employeeid, lastname, firstname, titleFROM employeesGO 12 All rights reserved 2004,Beijing CItynet TechnologyWHERE 过滤行employeeid lastname firstname title5 Buchanan Steven Sales ManagerUSE northwindSELECT employeeid, lastname, firstname, titleFROM employeesWHERE employeeid = 5GO 13 All rights reserved 2004,Beijing CItynet Technology修改列 名1) SELECT au_fname, au_lname, city, state,phone AS Telephone FROM authors-推荐使用2) SELECT au_fname, au_lname, city, state,Telephone= phone FROM authors3) SELECT au_fname, au_lname, city, state,phone Telephone FROM authors 14 All rights reserved 2004,Beijing CItynet Technology更改表名1) SELECT a.* from authors as a2) SELECT a.* from authors a3) select b.* from (select * from authors) as b 15 All rights reserved 2004,Beijing CItynet TechnologyInsertl 单行数据 INSERT VALUESl 多行数据 INSERTSELECTl SELECT INTOl 插入部分数据l 使用默认插入数据 16 All rights reserved 2004,Beijing CItynet Technology插入单行数据l 语法INSERT INTO 表名 列名序列 VALUES (值序列)l 例子USE northwindINSERT INTO orders( ID,quantity,note)VALUES(1,10,NewOrder) GO 17 All rights reserved 2004,Beijing CItynet TechnologyDELETEl 语法DELETE FROM 表名 WHERE 删除条件 l 例子USE northwindDELETE from ordersGO 18 All rights reserved 2004,Beijing CItynet TechnologyUSE northwindUPDATE productsSET unitprice = (unitprice * 1.1)GOUpdatel 语法UPDATE 表 名 SET 列名 =常量值 | 表达式 WHERE 更新条件 l 例子 19 All rights reserved 2004,Beijing CItynet Technology其他有用的 SQLl 删除重复行l 限制返回行数l IN( NOT IN)l LIKEl IS NULLl 查询结果排序l ISNULL() 函数l 联合查询 20 All rights reserved 2004,Beijing CItynet Technology1、删除重复行、删除重复行SELECT语句中使用语句中使用 ALL或或 DISTINCT选项来显示表中符合条件的所有行或删除其中选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为重复的数据行,默认为 ALL。使用使用 DISTINCT选项时,对于所有重复的数据行在选项时,对于所有重复的数据行在 SELECT返回的结果集合中只保留返回的结果集合中只保留一行。一行。2、限制返回的行数、限制返回的行数使用使用 TOP n PERCENT选项限制返回的数据行数,选项限制返回的数据行数, TOP n说明返回说明返回 n行,而行,而 TOP n PERCENT时,说明时,说明 n是是表示一百分数,指定返回的行数等于总行数的百分之几。表示一百分数,指定返回的行数等于总行数的百分之几。例如:例如:SELECT TOP 2 *FROM testtableSELECT TOP 20 PERCENT *FROM testtable 21 All rights reserved 2004,Beijing CItynet Technologyl NOT IN (项项 1,项项 2)l 模式匹配符模式匹配符 (判断值是否与指定的字符通配格式相符判断值是否与指定的字符通配格式相符 ):LIKE、 NOT LIKE空值判断符
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号