收藏 分销(赏)

C#和数据库技术基础ppt课件.ppt

上传人:二*** 文档编号:12675060 上传时间:2025-11-22 格式:PPT 页数:69 大小:645KB 下载积分:5 金币
下载 相关 举报
C#和数据库技术基础ppt课件.ppt_第1页
第1页 / 共69页
本文档共69页,全文阅读请下载到手机保存,查看更方便
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,C#,语言和数据库技术基础,1,第,1,章 第一个,C#,程序,.NET,概述与,C#,应用,.NET,是,Microsoft.NET,的简称,是基于,Windows,平台的一种技术。它包含能在,.NET Framework,平台运行的所以编程语言。,C#,是微软将,C,C+,Java,等多种语言优点集于一身,专为,.NET,开发而设计的一种完全面向对象的编程语言。,IDE,环境,Visual Studio,,它集成了,.NET Framework,是目前最流行的,.NET,平台开发环境。,2,第,1,章 第一个,C#,程序,新建程序,启动,Visual Studio 2010,新建项目,生产可执行文件,开始运行,经验,运行的快捷键:,F5,:启动。,运行的快捷键:,Ctrl+F5,:开始执行不调试,3,第,1,章 第一个,C#,程序,认识控制台应用程序文件夹的结构,Program.cs:,该文件是项目的启动文件,在该文件中定义项目的启动入口,即,Main(),方法。,HelloWorld.exe:,这个文件位于,binDebug,目录下,是项目编译后生成的可执行文件,可以直接运行。,认识,C#,程序,namespace,命名空间相当于,Java,中的,package,using,用来引用其他命名空间,相当于,Java,中的,import,class,和,Java,一样表示类。,Main(),方法,static void Main(string args),static void Main(),static int Main(string args),static int Main(),关键代码,Console.WriteLine();/,从控制台输出内容,Console.ReadLine();/,从控制台输入内容,4,第,1,章 第一个,C#,程序,C#,中的数据类型,C#,中布尔类型为,bool,,字符串类型关键字为小写(,string,)。,C#,中的变量,语法,数据类型 变量名称,;,命名规则,组成:,52,个英文字母,(AZ,az),、,10,个数字,(09),、下划线,(_),除此之外不能含有其他的字符。,开头:只能以字母或下划线开头。,不能使用的:不能是,C#,中的关键字。,变量名称要语义化。,当多个单词组成变量名时,应该使用骆驼,(Camel),命名法。,5,第,1,章 第一个,C#,程序,常量,定义:常量就是在程序运行过程中保持不变的值。,语法,const,数据类型 常量名称,=,值,;,命名规范,常量名称必须具有一定的实际意义。,常量名称最好以大写字母来命名,中间可以根据意义的连接性用下划线做连接,每个常量定义的右侧最好有一简单的注释,说明其作用。,常量名称最好不要超过,25,个字符,否则可读性差。,6,第,1,章 第一个,C#,程序,Console,类,C#,向控制台输出,(,三种方式,),Console.WriteLine();,Console.WriteLine(,要输出的值,);,Console.WriteLIne(“,格式字符串”,变量列表,);,C#,向控制台读入,Console.ReadLine();,int age=int.Parse(Console.ReadLine();,7,第,1,章 第一个,C#,程序,自定义方法,语法,访问修饰符 返回类型 方法名,(,参数列表,),/,方法主体,方法命名规范,方法名要有实际的含义,最好是动宾短语。,用,Pascal,命名法,8,第,1,章 第一个,C#,程序,类和对象,语法,访问修饰符,class,类名,/,类的主体,注释,C#,中行注释和块注释与,Java,是完全相同的,分别使用,/,和,/*/,。,文档注释每一行都以”,/”,开头。,折叠,把方法代码写在,#region,和,#endregion,之间。,9,第,1,章 第一个,C#,程序,调试程序的步骤如下:,设置断点:按,F9,快捷键。,启动调试:按,F5,快捷键。,在监视窗口中查看变量的当前值。,10,第,2,章,C#,语法快速热身,if,条件结构,简单,if,结构,if(,条件表达式,),/,代码块,if-else,结构,if(,条件表达式,),/,代码块,1,else,/,代码块,2,开始,条件表达式,代码块,结束,假,真,简单,if,结构的流程图,开始,条件表达式,代码块,1,结束,假,真,代码块,2,If-else,结构的流程图,11,第,2,章,C#,语法快速热身,多重,if,结构,if(,条件表达式,1),代码块,1,else if(,条件表达式,2),代码块,2,else if(,条件表达式,3),代码块,3,else,代码块,4,If-else,结构的流程图,开始,条件表达式,1,代码块,1,结束,假,真,代码块,2,条件表达式,2,代码块,3,条件表达式,3,代码块,4,假,假,真,真,12,第,2,章,C#,语法快速热身,嵌套,if,结构,if(,条件表达式,1),if(,条件表达式,2),代码块,1,else,代码块,2,else,代码块,3,开始,条件表达式,1,代码块,1,结束,假,真,代码块,2,条件表达式,2,代码块,3,真,假,嵌套,if,流程图,13,第,2,章,C#,语法快速热身,if,结构书写规范,为了使,if,结构更加清晰,应该把每个,if,或,else,包含的语句都用大括号括起来。,相匹配的一对,if,和,else,应该左对齐,内层的,if,结构相对于外层的,if,结构要有一定的缩进。,大括号按规范写法:,C#,中大括号“,”,和“,”,分别各占据新的一行。而,Jave,中左大括号“,”,紧跟,if,结构的条件后面,右大括号“,”,则需要另起新的一行。,switch,结构,switch,结构中,case,字句的摆放是没有顺序的,可以把,default,字句放在最前面,但要注意任何两个,case,语句不能具有相同的值。,case,中的值可以是,int,char,和,string,类型,但必须是常量表达式,不允许使用变量。,每个,case,和,default,语句中必须要有,break,语句。但如果,case,字句不包含其他语句,就不需要,break,语句。,14,第,2,章,C#,语法快速热身,一维数组,改错:,int array=new int50,1;,循环,while,循环,语法,while(,条件表达式,),代码块,do-while,循环,语法,do,代码块,while(,条件表达式,);,开始,条件表达式,代码块,结束,假,真,while,循环的执行过程,开始,条件表达式,代码块,结束,假,真,do-while,循环的执行过程,15,第,2,章,C#,语法快速热身,for,循环,语法,for(,表达式,1,表达式,2,表达式,3),代码块,开始,代码块,结束,假,真,for,循环的执行过程,条件表达式,2,条件表达式,3,条件表达式,1,16,第,2,章,C#,语法快速热身,foreach,循环,语法,foreach(,类型 元素,in,集合或者组合,),代码块,语法中的“元素”是一个只读变量,17,第,2,章,C#,语法快速热身,循环应用的区别如下,while,循环是先判断条件表达式是否成立。若成立则执行循环体;否则结束循环。,do-while,循环先执行一次循环体再判断条件表达式是否成立。若成立则继续循环;否则结束循环。,for,循环必须使用整形变量做循环计算器,通过条件表达式限定计数器变量值来控制循环。,foreach(),自动遍历给定集合的所有值。,18,第,2,章,C#,语法快速热身,break,语句,可以用在,switch,for,循环,foreach,循环,while,循环,do-while,循环中,continue,语句,必须出现在,for,循环,,foreach,循环,,do-while,循环,,while,循环中。,二重循环,【,代码演示,】,冒泡排序,外层循环,n-1,内层循环,n-1-I,【,代码演示,】,19,C#,中的访问修饰符,this,关键字,this,关键字代表的是当前的对象。在类的内部,可以用,this,关键字访问它的成员。,第,3,章 使用属性升级,MyBank,访问修饰符,访问权限,访问级别,public,不受任何限制,最高,private,只有类的内部可以使用,最低,20,第,3,章 使用属性升级,MyBank,C#,的属性,这种结合了字段和方法的实现方式我们称为属性,(propert),。,语法,private string _name;,public string Name,get return _name;,set _name=value;,属性的数据类型,属性的数据类型可以是一个类或一个数组。,属性的访问类型,只读属性,只包含,get,访问器,只写属性,只包含,set,访问器,读写属性,包含,get,和,set,访问器,封装字段快捷键,Ctrl+R+E,。,21,第,3,章 使用属性升级,MyBank,C#,中,一般为类的私有字段和属性的命名会采用不同的命名法。,在为类的私有字段命名时,要以下划线“,_”,开头,随后出现的英文字母采用,Camel,命名法。,在为类的属性命名时,采用,Pascal,命名法。,C#,中,字段和属性的区别:,通常将字段指定为,private,,在类内部使用。将属性指定为,public,,对外部公开,通过,get,和,set,访问器对字段提供安全,有效范围的保护。,C#,中,属性和方法的区别:,C#,中属性,get,访问器和,set,访问器后不需要使用“,()”,,因为访问器没有返回值,所以不需要指定,void,。,22,第,3,章 使用属性升级,MyBank,面向对象的特征之,封装,定义:封装是将数据和操作的方法保存在一起的技术,或是有选择地隐藏或公开类中的属性和方法的过程。,封装为我们带来的好处,避免使用非法数据赋值,保证数据的完整性,避免类的内部发生修改时,导致整个程序的修改。,值传递和引用传递,值传递是将变量的值复制一份传递给方法,使得改方法的形参和实参的值相同。在调用方法中修改形参也只是对实参复制品的数据更新,并没有真正改变实参的值。,引用传递是将要传递的对象的引用复制给方法的形参,使得被调用的方法直接对引用对象进行更改,会影响实参原来的值。,(,使用,ref,关键字,),23,第,4,章 深入,C#,的,String,类,常用字符串的处理方法,Equals(),Compare(string strA,string strB),IndexOf(string value),LastIndexOf(string value),Join(string separator,stringvalue),Split(char separator),Substring(int startIndex,int length),ToLower(),ToUpper(),Trim(),24,第,4,章 深入,C#,的,String,类,运算符,=,和,String,类方法,Equals(),的区别如下,=,:通常来比较,int,double,等数值类型的数据是否相等。,Equals():,通常用来比较两个对象的值是否相等。,“”和,String.Empty,的作用如下,“”:为,String,对象分配了一个长度为,0,的存储空间。,String.Empty,:为对象分配了一个长度为,0,的存储空间。,25,第,4,章 深入,C#,的,String,类,Format,格式化,语法,String myString=String.Format(“,格式字符串”,参数列表,);,其中格式字符串中包含固定文本和格式项。格式项的形式如下:,索引,对齐,:,格式字符串,格式化数值结果表,26,第,4,章 深入,C#,的,String,类,字符,说明,示例,输出结果,C,货币格式,String.Format(“0:C3”,2000),¥,2000.000,D,十进制格式,String.Format(“0:D3”,2000),2000,F,小数点后的位数固定,String.Format(“0:F3”,2000),2000.000,N,用逗号,(,),隔开的数字,String.Format(“0:N”,250000),250,,,000.00,P,百分比计数法,String.Format(“0:P3”,0.29768),29.768,X,十六进制格式,String.Format(“0:X000”,12),c,27,第,4,章 深入,C#,的,String,类,简单的类型转换,隐式类型转换,任何数值类型,A,,只要其取值范围完全包含在类型,B,的取值范围类,就可以隐式转换为类型,B,。,显式类型转换,sum=(int)score+bonus;,注意:显式类型转换会丢失精度。,数值类型与字符串之间的转换,字符串转换为数值型,int.Parse(string);,float.Parse(string);,double.Parse(string);,数值型转换为字符串,string myage=age.ToString();,28,第,4,章 深入,C#,的,String,类,常用的,Convert,类的类型转换方法,方法,说明,Conver.ToInt32(),转换为整形,(int,型,),Conver.ToSingle(),转换为单精度浮点型,(float,型,),Conver.ToDouble(),转换为双精度浮点型,(double,型,),Conver.ToString(),转换为字符串类型,(string,型,),29,第,6,章 程序数据的集散地:数据库,什么是数据库?,数据库是表和数据库访问对象的集合。其中表分类存储了不同的实体信息,每一行数据对应一个实体的描述信息。,当今常用数据库,SQL Server,Oracle,DB2,MySQL,30,第,6,章 程序数据的集散地:数据库,使用数据库的好处:,可以结构化存储大量的数据信息,方便用户进行有效的检索和访问。,可以有效地保持数据信息的一致性,完整性,降低数据冗余。,可以满足应用的共享和安全方面的要求。,数据库技术能够方便智能化地分析,产生新的有用的信息。,实体,实体是所有客观存在的、可以被描述的事物。,记录,在数据库的表中,每一“行”,(Row),实际上对应一个实体,这样的一行叫做“记录”,(Record),。,字段,表格中的每一列,通常叫做“列”,也可以称之为“字段”。,31,第,6,章 程序数据的集散地:数据库,数据库和数据库表,数据库就是表的集合,逻辑上数据库包括数据表,存储表间关系的表以及各种关系对象,数据库管理系统和数据库系统,数据库管理系统,(DBMS,DataBase Management System),是一种系统软件,由一个数据库和一组访问数据的程序构成。,数据库管理系统的基本目标是要提供一个可以方便有效地存取数据库信息的环境。,数据库管理系统的主要功能是维护数据库,并有效地访问数据库中各部分的数据。,数据库系统,(DBS,DataBase System),是一个实际可运行的系统,可以对系统提供的数据进行存储,维护和应用,它是由存储介质,处理对象和管理系统共同组成的集合体,通常由软件,数据库和数据库管理员组成。,数据库由数据库管理系统统一管理,数据的插入,修改,和检索都要通过数据库管理系统进行。,数据库管理员,(DBA,DataBase Administrator),在数据库系统中负责创建,监控和维护整个数据库,使数据能被有权限使用的人有效使用。,32,第,6,章 程序数据的集散地:数据库,数据冗余和数据完整性,在数据库系统中,数据重复的现象就是数据冗余,(Redundance),数据的完整性,(Integrality),是指数据库中数据的准确性。,登陆,SQL Server,数据库,连接,SQL Server,数据库时需要注意以下两点:,在连接,SQL Server,之前,,SQL Server,服务必须已经启动,SQL Server Management Studio,可以连接和管理多个其他计算机上的,SQL Server,数据库。,SQL Server,中数据库按照用途可以划分为如下两种:,系统数据库,用户数据库,33,第,6,章 程序数据的集散地:数据库,Microsoft SQL Server 2008,提供的系统数据库,Master,数据库,Tempdb,数据库,Model,数据库,Msdb,数据库,Resource,数据库,新建数据库连接,SQL Server,支持两种身份认证,Windows,身份验证,SQL Server,身份验证,操作权限,固定的数据库操作权限有十个,db_backupoperator,权限可以备份数据库,db_datareader,可以读取数据库中的数据,db_denydatareader,不允许读取数据,34,第,6,章 程序数据的集散地:数据库,创建数据库,数据库文件(,Database File,)事务日志文件(,Transaction Log File,数据库文件是存放数据库数据和数据库对象的文件,一个数据库可以有多个数据库文件,一个数据库文件只属于一个数据库。当有多个数据库文件时,有一个文件被指定为主数据库文件,(Primary Database File),,主数据库文件的扩展名为,.mdf,它用来存储数据库的启动信息数据。一个数据库只能有一个主数据库文件,其他数据库文件被称为次数据库文件,(Secondary Database File),。,事务日志文件(,Transaction Log File,),事物日志文件用来记录数据库的更新情况。事物日志文件的文件扩展名为,.ldf,,一个数据库可以有一个或多个事物日志文件。,35,第,6,章 程序数据的集散地:数据库,数据库的选项,兼容级别:数据库向以前的版本兼容的级别。,数据库为只读:一般该选项都设置为,False,如果设置为,True,则该数据库将不允许再写入数据。,访问限制:指定哪些用户可以访问该数据库,可能值有以下三种。,Multiple:,数据库的正常状态,允许多个用户同时访问该数据库,Single:,用于维护操作的状态,一次只允许一个用户访问该数据库。,Restricted:,只有管理员或者特定的成员才能使用该数据库。,自动关闭:如果设置为,True,的话,则最后一个用户退出后,数据库会关闭并且释放资源。对那些经常被使用 的数据库,此选项不要设置为,True,否则会额外增加开关数据库带来的负担。,自动收缩:如果设置为,True,的话,则该数据库将定期自动收缩,释放没有使用的数据库磁盘空间。,36,第,7,章 用表组织数据库,数据完整性,为了实现完整性,数据库需要做以下两方面的工作。,检验每行数据是否符合要求,检验每列数据是否符合要求,为了实现以上要求,,SQL Server,提供了以下四种类型的约束,(Constraint),。,实体完整性约束,实体完整性约束要求表中的每一行数据都反映不同的实体,不能存在相同的数据行。通过索引,唯一约束,主键约束,或标识列属性,可以实现表的实体完整性。,域完整性约束,域完整性指的是给定输入的有效性。通过限制数据类型,检查约束,输入格式,外键约束,默认值,非空约束等多种方法,可以实现表的域完整性。,引用完整性约束,在强制引用完整性时,,SQL Server,禁止用户进行下列操作,当主表中没有关联的记录时,将记录添加到字表中。,更改主表中的值并导致相关表中的记录孤立。,从主表中删除记录,但是相关表中仍存在与该记录匹配的相关记录。,引用完整性通过主键和外键之间的引用关系来实现,自定义完整性约束,用户自定义完整性用来定义特定的规则。,37,第,7,章 用表组织数据库,主键,定义:主键用来唯一标识表中的每一行,用于强制表的实体完整性。,一个表只能有一个主键,主键约束了表中的行是唯一的。,在选择哪个列作为主键的时候,需要考虑以下两个原则:最少性和稳定性,最少性是指列数最少的键,如果可以从单个主键和组合主键中选择时,应该选择单个主键,这是因为操作一列比操作多列要快。当然该规则也有例外,例如,两个整数类型的列的组合比一个很大的字符类型的列要快。,稳定性是指列中数据的特征,由于主键通常用来在两个表之间建立联系,所以主键的数据不要经常更新,理想情况下,应该永远不改变。,38,第,7,章 用表组织数据库,外键,外键用来强制引用完整性。一个表可以有多个外键。,SQL Server,中常用的数据类型,binary,varbinary,image,char,varchar,nchar,nvarchar,text,ntext,datetime,int,smallint,tinyint,bigint,float,real,money,bit,39,第,7,章 用表组织数据库,标识列,标识列的数据是自动生成的,不能在该列上输入数据。,如果建立了主表和子表的关系,则有以下几种情况。,子表中相关项目的数据在主表中必须存在。,主表中相关项的数据更改了,则子表对应的数据项也应该随之更改。,在删除子表之前,不能够删除主表。,40,第,8,章 用,SQL,语句操作数据,SQL,简介,SQL,全称是“结构化查询语言,(Structured Query Language)”,SQL,是针对数据库而言的一门语言,它可以创建数据库,数据表,可以针对数据库的数据进行增,删,改,查等操作,可以创建视图,存储过程,可以赋予用户权限等。,SQL,的组成,SQL,语言主要由以下几部分组成。,DML(Data Manipulation Language,数据操作语言,也称为数据操纵语言,),:用来插入,修改和删除数据库中的数据,如,INSERT,UPDATE,及,DELETE,等。,DDL(Data Definition Language,数据定义语言,),:用来建立数据库,数据库对象和定义其列,大部分是以,CREATE,开头的命令如,CREATE TABLE,CREATE VIEW,及,DROP TABLE,等。,DQL(Data Query Language,数据查询语言,),:用来对数据库中的数据进行查询,如,SELECT,等。,DCL(Data Control Language,数据控制语言,),:用来控制数据库组件的存取许可,存取权限等,如,GRANT,REVOKE,等,除此之外,,T-SQL,还包括变量说明,内部函数等其他的命令。,41,第,8,章 用,SQL,语句操作数据,SQL,中的运算符,算术运算符,+,,,-,,*,,/,,,%,赋值运算符,=,比较运算符,=,=,逻辑运算符,AND,OR,NOT,使用,INSERT,插入数据,语法,Insert into,表名,(,列名列表,)values(,值列表,);,其中:,into,是可选的,也可以省略。,表名是必须的,表的列名是可选的,如果省略,将依次插入所有列。,多个列名和多个值列表用逗号分隔。,分号,(;),是,T-SQL,语句终止符,分号不是必须的。,42,第,8,章 用,SQL,语句操作数据,注意事项,每次插入一整行数据,不可能只插入半行或者几列数据,但允许某些列为空或使用默认值。如果违反列的非空约束,那么插入语句会检验失败,不能成功插入数据。,数据值的数目必须与列数相同,每个数据值的数据类型,精度和小数位数也必须与相应的列匹配。,INSERT,语句不能为标识列指定值,因为它的数字是自动增长的。,对于字符类型,日期类型的列,当插入数据的时候,用单引号,(),将其引起来。,尽管可以不指定列名,但是最好明确指定插入的列和对应的值,以做到“心中有数”。,如果在设计表的时候指定某列不允许为空,则该列必须插入数据,否则将报告错误信息。,插入的数据项,要求符合检查约束的要求。,(default,可以为拥有默认值的列插入数据,),43,第,8,章 用,SQL,语句操作数据,一次插入多行数据,通过,insert select,语句将现有表中的数据添加到已存在的表中,注意,查询得到的数据个数,顺序,数据类型等,必须与插入的项保持一致,新表必须预先建好,并且具有列的相关属性。,通过,select into,语句将现有表中的数据添加到新表,语法,select identity(,数据类型,标识种子,标识增长量,)as,列名,into,新表,from,原始表,注:该表不能预先存在,通过,union,关键字合并数据进行插入,44,第,8,章 用,SQL,语句操作数据,使用,update,更新数据,语法,update,表名,set,列名,=,更新值,where,更新条件,其中,set,后面可以紧随多个数据列的更新值,不限一个,使用逗号分隔。,where,子句是可选的,用来限制更新数据的条件。如果不限制,则整个表的所有数据行将被更新。,使用,delete,删除数据,语法,delete from,表名,where;,提示,delete,语句只要删除就是删除整条记录,不会只删除单个列,所以在,delete,后不能出现列名,使用,truncate table,删除数据,truncate table,删除表中的所以行,但是表的结构,列,约束,索引等不会被改动。,truncate table,不能用于有外键约束引用的表,这种情况下,需要使用,delete,语句。,truncate table,比,delete,执行速度快,使用的系统资源和事务日志资源更少,并且删除数据后表的标识列会重新开始编号。,导入和导出数据,现场演示,45,第,9,章 数据查询基础,使用,select,语句进行查询,语法,select,from,where,order byASC,或,DESC,查询所有的数据行和列 (*),查询部分行和列,在查询中使用列的别名 (,as,),查询空值 (,is null,),在查询中使用常量列,查询返回限制的行数 (,top,),46,第,9,章 数据查询基础,order by,ASC,升序,DESC,降序,在查询中使用函数,常用的四类函数,字符串函数,日期函数,数学函数,系统函数,47,第,9,章 数据查询基础,部分常用的字符串函数,charindex,用来寻找一个指定的字符串在另一个字符串中的起始位置,len,返回传递给它的字符串长度,upper,把传递给它的字符串转换为大写,ltrim,清除字符左边的空格,rtrim,清除字符右边的空格,right,从字符串右边返回指定数目的字符,replace,替换一个字符串中的字符,stuff,在一个字符串中,删除指定长度的字符,并在该位置插入一个新的字符串,48,第,9,章 数据查询基础,日期函数,函数名,描述,举例,GETDATE,取得当前的系统日期,select getdate(),返回:今天的日期,例如:,2009-12-25 12:00:00.000,DATEADD,将指定的数值添加到指定的日期部分后的日期,select dateadd(mm,4,01/01/2009),返回:以当前的日期格式返回,05/01/2009,DATEDIFF,两个日期之间的指定日期部分的间隔,select datediff(mm,01/01/2009,05/01/2009),返回:,4,DATENAME,日期中指定日期部分的字符串形式,select datename(dw,01/01/2000),返回:,Saturday,或星期六,DATEPART,日期中指定日期部分的整数形式,select datepart(day,01/15/2000),返回:,15,49,第,9,章 数据查询基础,日期部分参数及其缩写,日期部分参数,缩写,日期部分参数,缩写,year,yy,yyyy,weekday,dw,w,quarter,qq,q,hour,hh,month,mm,m,minute,mi,n,dayofyear,dy,y,second,ss,s,day,dd,d,millisecond,ms,week,wk,ww,50,第,9,章 数据查询基础,数学函数,函数名,描述,举例,RAND,返回从,0,到,1,之间的随即,float,值,select rand(),返回:,0.79288062146374,ABS,取数值表达式的绝对值,select ABS(-43),返回:,43,CEILING,向上取整,取大于或等于指定数值、表达式的最小整数,select ceiling(43.5),返回:,44,FLOOR,向下取整,取小于或等于指定表达式的最大整数,select floor(43.5),返回:,43,POWER,取数值表达式的幂值,select power(5,,,2),返回:,25,ROUND,将数值表达式四舍五入为指定精度,select round(43.543,1),返回:,43.500,SIGN,对于正数返回,+1,,负数返回,-1,,对于,0,则返回,0,select sign(-43),返回:,-1,SQRT,取浮点表达式的平方根,select sqrt(9),返回:,3,51,第,9,章 数据查询基础,系统函数,函数名,描述,举例,CONVERT,用来转变数据类型,select convert(varchar(5),12345),返回:字符串,12345,CURRENT_USER,返回当前用户的名字,select current_user,返回:你登录的用户名,DATALENGTH,返回用于指定表达式的字节数,select datalength(,中国,A,联盟,),返回:,5,HOST_NAME,返回当前用户所登陆的计算机名字,select host_name(),返回:你所登录的计算机的名字,SYSTEM_USER,返回当前所登陆的用户名称,select system_user,返回:你当前所登录的用户名,USER_NAME,从给定的用户,ID,返回用户名,select user_name(1),返回:从任意数据库中返回“,dbo”,52,第,10,章 模糊查询和聚合函数,模糊查询,定义:模糊查询提取的数据不一定是确切的,查询者对查询条件也是模糊的,大概的,不特别明确的。,模糊查询可以使用,like,关键字和通配符来进行。(,is null,查询严格来说也是一种模糊查询),模糊查询还可以基于某个范围内的查询和某些列举值内的查询,53,第,10,章 模糊查询和聚合函数,通配符,定义:通配符是一类字符,它可以代替一个或多个真正的字符,查找信息时作为替代字符出现。,通配符,解释,实例,_,一个字符,A LIKE C_,则符合条件的,A,如,CS,CD,等,%,任意长度的字符串,B LIKE CO%,则符合条件的,B,如,CONST,COKE,等,括号中所指定范围内的一个字符,C LIKE 9W01-2,则符合条件的,C,如,9W01,或,9W02,不在括号中所指定范围内的任意一个字符,D LIKE 9W01-2,则符合条件的,D,如,9W03,或,9W07,等,54,第,10,章 模糊查询和聚合函数,使用,like,进行模糊查询,代码演示,使用,between,在某个范围内查询,区别,between 20 and 40,Between 40 and 20,使用,in,在列举值内进行查询,代码演示,聚合函数,SUM(),AVG(),MAX(),和,MIN(),COUNT(),55,第,11,章 联接查询和分组查询,使用,GROUP BY,进行分组查询,在,select,列表中可以指定的列:,被分组的列,为每个分组返回一个值的表达式,如聚合函数计算出的列,使用,HAVING,子句进行分组筛选,在,select,语句中,,WHERE,GROUP BY,HAVING,子句和聚合函数的执行次序如下:,WHERE,子句从数据源中去掉不符合其搜索条件的数据;,GROUP BY,子句搜集数据行到各个组,,HAVING,子句去掉不符合其他搜索条件的各组数据行。,56,第,11,章 联接查询和分组查询,内联接,定义:它根据表中共同的列来进行匹配。特别是两个表存在主外键关系时通常会使用到内联接查询,在,where,子句中指定联接条件,在,from,子句中使用,inner joinon,Inner join,用来联接两个表,Inner,可以省略,On,用来设置条件,57,第,11,章 联接查询和分组查询,外联接查询,外联接是至少返回一个表中的所有记录,根据匹配条件有选择性地返回另一张表的记录。,左外联接查询,Left joinon,Join,后面的表是字表,右外联接查询,Right joinon,Join,后面的表是主表,58,第,14,章 使用,ADO.NET,访问数据库,ADO.NET,简介,ADO.NET,是,.NET Framework,中不可缺少的一部分,它是一组类。通过这些类,,.NET,可以与数据源进行连接并对数据进行增,删,改,查等操作。,ADO.NET,的主要组件,.NET Framework,数据提供程序 包括以下四个核心对象,Connection,建立和特定数据源的连接,Command,对数据源执行命令,DataReader,从数据源中读取只进且只读的数据流,DataAdapter,用数据源填充,DataSet,并解析更新,DataSet,是专门为独立于任何数据源的数据访问而设计的。使用它,可以不必直接和数据源打交道,可以大批量地操作数据,也可以将数据绑定在控件上。,59,第,14,章 使用,ADO.NET,访问数据库,Connection,对象,作用:连接数据库,连接数据库步骤:,定义连接字符串,语法,Data Source=,服务器名,;Initial Catalog=,数据库名,;User ID=,用户名,;Pwd=,密码,;,创建,Connection,对象,语法,SqlConnection connection=new SqlConnection(connString);,打开和数据库的连接,语法,connection.Open();,60,第,14,章 使用,ADO.NET,访问数据库,Connection,对象常用的属性和方法,属性,说明,ConnectionString,设置,/,获取应用程序连接数据库的连接字符串,方法,说明,Open(),使用,ConnectionString,属性所指定的设置打开数据库连接,Close(),关闭与数据库的连接,61,第,14,章 使用,ADO.NET,访问数据库,常见错误,数据库连接字符串各参数之间的分隔符错误,数据库连接字符串中参数名称拼写错误,数据库连接字符串中引号出现的位置不正确,异常处理,语法,try,/,包含可能出现异常的代码,catch(,处理的异常类型,),/,处理异常的代码,finally,/,无论异常是否发生,该段代码总会执行。,62,第,14,章 使用,ADO.NET,访问数据库,Command,对象,创建,Command,对象的方法,语法,SqlCommand command=new SqlCommand(SQL,语句,Connection,对象,);,使用,Comman,对象的步骤,创建数据库连接,创建一个,Connection,对象,定义执行的,SQL,语句,将对数据库执行的,SQL,语句赋给一个字符串,创建,Command,对象,使用已有的,Connection,对象和,SQL,语句字符串创建一个,Command,对象,执行,SQL,语句,使用,Command,对象的某个方法执行命令。,63,第,14,章 使用,ADO.NET,访问数据库,Command,对象的主要属性和方法,属性,说明,Conn
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 初中其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服