研发部数据库应用开发培训ppt课件_第1页
研发部数据库应用开发培训ppt课件_第2页
研发部数据库应用开发培训ppt课件_第3页
研发部数据库应用开发培训ppt课件_第4页
研发部数据库应用开发培训ppt课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库运用开发一、SQL server SQL言语概要二、如何读懂数据库设计图三、如何运用SQL Server企业管理器、查询分析器四、.NET中对于数据库访问提供的对象熟习DataSet、DataTable、DataRow对象五、运用Sql Helper并创建DBAccess实现数据库封装六、如何运用DBAccess提供的方法 目录 一、SQL言语概要一、数据类型二、SQL语句 数据类型Char和Varcharchar和varchar的长度都在1到8000之间,它们的区别在于char是定长字符数据,而varchar是变长字符数据。所谓定长就是长度固定的,当输入的数据长度没有到达指定的长度时将

2、自动以英文空格在其后面填充,使长度到达相应的长度;而变长字符数据那么不会以空格填充。text存储可变长度的非Unicode数据,最大长度为231-1(2,147,483,647)个字符。 数据类型Nchar、Nvarcharnvarchar、nchar从称号上看只是多了个字母“n,它表示存储的是Unicode数据类型的字符。字符中,英文字符只需求一个字节存储就足够了,但汉字众多,需求两个字节存储,英文与汉字同时存在时容易呵斥混乱,Unicode字符集就是为理处理字符集这种不兼容的问题而产生的,它一切的字符都用两个字节表示,即英文字符也是用两个字节表示。nchar、nvarchar的长度是在1到

3、4000之间。和char、varchar比较:nchar、nvarchar那么最多存储4000个字符,不论是英文还是汉字;而char、varchar最多能存储8000个英文,4000个汉字。可以看出运用nchar、nvarchar数据类型时不用担忧输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。 数据类型DateTimedatetime:从1753年1月1日到9999年12月31日的日期和时间数据,准确到百分之三秒。 数据类型BigInt、Int、SmallInt、TinyIntbigint:从-263(-9223372036854775808)到263-1(92233720

4、36854775807)的整型数据。 int:从-231(-2,147,483,648)到231-1(2,147,483,647)的整型数据。 smallint:从-215(-32,768)到215-1(32,767)的整数数据。 tinyint:从0到255的整数数据。 Bitbit:1或0的整数数据。 数据类型Decimal/Numeric、Floact、Realdecimal和numeric 这两种数据类型是等效的。都有两个参数:p精度和s小数位数。指定小数点左边和右边可以存储的十进制数字的最大个数,p必需是从 1到38之间的值。s指定小数点右边可以存储的十进制数字的最大个数,s必需是从

5、0到p之间的值,默许小数位数是0。 float和real float:从-1.79308到1.79308之间的浮点数字数据。 real:从-3.4038到3.4038之间的浮点数字数据。在SQL Server中,real的同义词为float(24)。 SQL语句Select语句Insert语句Update语句Delete语句其他常用的 SQL语句SELECT ALL | DISTINCT FROM ,n WHERE Partial Syntax1 SELECT StatementSelect ListWHEREFROM 指定列 employeeidlastnamefirstnametitle1

6、DavolioNancySales Representative2FullerAndrewVice President, Sales3LeverlingJanetSales Representative4PeacockMargaretSales Representative5BuchananStevenSales Manager6SuyamaMichaelSales Representative7KingRobertSales Representative8CallahanLauraInside Sales Coordinator9DodsworthAnneSales Representati

7、veUSE northwindSELECT employeeid, lastname, firstname, titleFROM employeesGO WHERE 过滤行employeeidlastnamefirstnametitle5BuchananStevenSales ManagerUSE northwindSELECT employeeid, lastname, firstname, titleFROM employeesWHERE employeeid = 5GO 修正列名1SELECT au_fname, au_lname, city, state,phone AS Teleph

8、one FROM authors-引荐运用2SELECT au_fname, au_lname, city, state,Telephone= phone FROM authors3SELECT au_fname, au_lname, city, state, phone Telephone FROM authors 更改表名1SELECT a.* from authors as a2SELECT a.* from authors a3select b.* from (select * from authors) as bInsert单行数据INSERT VALUES多行数据INSERTSEL

9、ECTSELECT INTO插入部分数据运用默许插入数据插入单行数据语法INSERT INTO 表名 列名序列 VALUES (值序列例子USE northwindINSERT INTO ordersID,quantity,noteVALUES(1,10,NewOrder) GO DELETE语法DELETE FROM 表名 WHERE 删除条件 例子USE northwindDELETE from ordersGO USE northwindUPDATE products SET unitprice = (unitprice * 1.1)GOUpdate语法UPDATE 表名 SET 列名=

10、常量值 | 表达式 WHERE 更新条件 例子 其他有用的SQL删除反复行限制前往行数INNOT INLIKEIS NULL查询结果排序ISNULL() 函数结合查询 1、删除反复行SELECT语句中运用ALL或DISTINCT选项来显示表中符合条件的一切行或删除其中反复的数据行,默以为ALL。运用DISTINCT选项时,对于一切反复的数据行在SELECT前往的结果集合中只保管一行。2、限制前往的行数运用TOP n PERCENT选项限制前往的数据行数,TOP n阐明前往n行,而TOP n PERCENT时,阐明n是表示一百分数,指定前往的行数等于总行数的百分之几。例如:SELECT TOP

11、2 *FROM testtableSELECT TOP 20 PERCENT *FROM testtableNOT IN (项1,项2)方式匹配符(判别值能否与指定的字符通配格式相符):LIKE、NOT LIKE空值判别符(判别表达式能否为空):IS NULL、NOT IS NULL逻辑运算符(用于多条件的逻辑衔接):NOT、AND、OR1、范围运算符例:age BETWEEN 10 AND 30相当于age=10 AND age=302、列表运算符例:country IN (Germany,China)3、方式匹配符例:常用于模糊查找,它判别列值能否与指定的字符串格式相匹配。可用于char、

12、varchar、text、ntext、datetime和smalldatetime等类型查询。空值判别符例 WHERE age IS NULL逻辑运算符:优先级为NOT、AND、OR(四)查询结果排序 运用ORDER BY子句对查询前往的结果按一列或多列排序。ORDER BY子句的语法格式为:ORDER BY column_name ASC|DESC ,n其中ASC表示升序,为默许值,DESC为降序。例如:SELECT *FROM usertableORDER BY age desc,userid ASC另外,可以根据表达式进展排序。 ISNULL ( check_expression , r

13、eplacement_value ) 参数check_expression将被检查能否为 NULL的表达式。check_expression 可以是任何类型的。replacement_value在 check_expression 为 NULL时将前往的表达式。replacement_value 必需与 check_expresssion 具有一样的类型。 前往类型前往与 check_expression 一样的类型。注释假设 check_expression 不为 NULL,那么前往该表达式的值;否那么前往 replacement_value。例如A. 将 ISNULL 与 AVG 一同运用

14、下面的例如查找一切书的平均价钱,用值 $10.00 交换 titles 表的 price 列中的一切 NULL 条目。USE pubsGOSELECT AVG(ISNULL(price, $10.00)FROM titlesGO下面是结果集:- 14.24 (1 row(s) affected)B. 运用 ISNULL下面的例如为 titles 表中的一切书选择书名、类型及价钱。假设一个书名的价钱是 NULL,那么在结果集中显示的价钱为 0.00。USE pubsGOSELECT SUBSTRING(title, 1, 15) AS Title, type AS Type, ISNULL(pr

15、ice, 0.00) AS PriceFROM titlesGO 二、结合查询内衔接左衔接右衔接关键词inner join、left join、right joinJoin用途:当他要从两个或者以上的表中选取结果集时,他就会用到JOIN。例:“Employees表中的数据如下,其中ID为主键:ID Name 01 Hansen, Ola02 Svendson, Tove03 Svendson, Stephen04 Pettersen, Kari“Orders表中的数据如下:ID Product01 Printer03 Table03 Chair用Employees的ID和Orders的ID相关

16、联选取数据:SELECT Employees.Name, Orders.ProductFROM Employees, OrdersWHERE Employees.ID = Orders.ID前往结果:Name ProductHansen, Ola PrinterSvendson, Stephen TableSvendson, Stephen Chair或者他也可以用JOIN关键字来完成上面的操作:SELECT Employees.Name, Orders.ProductFROM EmployeesINNER JOIN OrdersON Employees.ID = Orders.ID INNE

17、R JOIN的语法:SELECT field1, field2, field3FROM first_tableINNER JOIN second_tableON first_table.keyfield = second_table.foreign_keyfield 解释:INNER JOIN前往的结果集是两个表中一切相匹配的数据。LEFT JOIN的语法:SELECT field1, field2, field3FROM first_tableLEFT JOIN second_tableON first_table.keyfield = second_table.foreign_keyfie

18、ld 用Employees表去左外结合Orders表去找出相关数据:SELECT Employees.Name, Orders.ProductFROM EmployeesLEFT JOIN OrdersON Employees.ID = Orders.ID 前往结果:Name ProductHansen, Ola PrinterSvendson, ToveSvendson, Stephen TableSvendson, Stephen ChairPettersen, Kari 解释:LEFT JOIN前往first_table中一切的行虽然在 second_table中没有相匹配的数据。RIG

19、HT JOIN的语法:SELECT field1, field2, field3FROM first_tableRIGHT JOIN second_tableON first_table.keyfield = second_table.foreign_keyfield 用Employees表去右外结合Orders表去找出相关数据:SELECT Employees.Name, Orders.ProductFROM EmployeesRIGHT JOIN OrdersON Employees.ID = Orders.ID 前往结果:Name ProductHansen, Ola PrinterSvendson, Stephen TableSvendson, Stephen Chair解释:RIGH

温馨提示

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

评论

0/150

提交评论