《SQLServer数据库》PPT课件.ppt_第1页
《SQLServer数据库》PPT课件.ppt_第2页
《SQLServer数据库》PPT课件.ppt_第3页
《SQLServer数据库》PPT课件.ppt_第4页
《SQLServer数据库》PPT课件.ppt_第5页
已阅读5页,还剩28页未读 继续免费阅读

VIP免费下载

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

文档简介

SQLServer2000数据库入门,游建社,2004.1,2019/12/5,数据库入门,2,SQLServer2000,MS数据库管理系统组成:程序:用户界面,工具数据结构:管理和存储数据系统databaseMasterPubstempDB,2019/12/5,数据库入门,3,SQLServer数据库,管理、存储和访问数据Database对应文件:.mdf,.ldf包含:Table,View,Index,StoreProcedure,Trigger,etc.,2019/12/5,数据库入门,4,SQL2000管理工具,2019/12/5,数据库入门,5,创建database,右键-新建数据库输入数据库名:test包含:数据文件:test_Data事务日志文件:test_Log及对应物理文件:.mdf,.ldf,2019/12/5,数据库入门,6,表Table,Table:表是包含数据库中所有数据的数据库对象。表结构:Column列(字段)的集合每行是一条记录。表的定义:列名,数据类型,初始值,是否允许空约束规则,索引,主键,外键,2019/12/5,数据库入门,7,建新表,右键-新建表列名,数据类型,长度,允许空类型:整数:bigInt:64bitsInt:32bits,dec,Numeric,MoneyDatetimeChar,VarChar,NvarcharText,Image默认值自动增长(+1)RowGUID,2019/12/5,数据库入门,8,主键、外键、,主键(PK):唯一标示数据,数据完整性,主键索引,查找快速关系:引用外键(FK):表与表之间的链接,数据完整性、一致性索引:Index,查找快速例如:部门,职员,2019/12/5,数据库入门,9,视图View,虚拟表,由查询定义,包含行、列,View数据并不真正存在在View中,通过查询其它数据源(数据表、视图、其他数据库、其他服务器)而来。,2019/12/5,数据库入门,10,存储过程StoredProcedure,StoredProcedure运行在SQLServer服务器方类似子程序模块可以输入、输出参数包含数据库操作语句(orcallSP)Returnvalue编程语言:Transact-SQL优点:模块化设计、创建一次,重复使用,后台运行,速度更快网络流量减少,安全,/*-StoredProcedure:sp_backupmessage-Getbackupfilemessage-byYoujianshe2003-2-14-*/CREATEPROCsp_backupmessageas_filenameVARCHAR(200)asRestoreHEADERONLYFROMDISK=as_filenameGO,2019/12/5,数据库入门,11,触发器Trigger,一种特殊SP,在指定表的数据发生变化时自动生效,即被调用、被执行。(Insert,Update,Delete时)目的:强制业务规则和数据完整性Trigger:Transact-SQL语法,(简单或复杂)逻辑处理Tables:Inserted,Deleted,2019/12/5,数据库入门,12,自定义类型、函数,自定义类型一般不需要自定义函数,2019/12/5,数据库入门,13,数据库设计,需求分析逻辑模型E-R图-实体关系数据流图-业务处理物理模型数据库分析、优化,2019/12/5,数据库入门,14,数据库设计Steps,需求分析阶段需求收集和分析,结果得到数据字典描述的数据需求(和数据流图描述的处理需求)。概念结构设计阶段通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,可以用E-R图表示。逻辑结构设计阶段将概念结构转换为某个DBMS所支持的数据模型(例如关系模型),并对其进行优化。数据库物理设计阶段为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。数据库实施阶段运用DBMS提供的数据语言(例如SQL)及其宿主语言(例如C),根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。数据库运行和维护阶段数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。,2019/12/5,数据库入门,15,数据库设计实例,项目工作管理,包含数据表:职员花名册,公司部门系统功能,权力角色,职员角色项目(Project)、项目成员(项目-职员)项目任务分解(WBS,分级,包括任务包、工作量估计,计划,进度,人员安排,权重,任务包父亲)项目任务执行跟踪(工作日志):项目-职员时间对应任务包实际工作量,2019/12/5,数据库入门,16,E-R图实例,2019/12/5,数据库入门,17,编程接口API,ADO,OLEDB,ODBC(JDBC),EmbeddedSQL,URL,XML(Internet)使用数据库打开到数据库的连接。设置控制某些行为的选项执行Transact-SQL语句将返回代码的数据值、输出参数和结果集移入程序变量中,并通过程序变量由应用程序逻辑使用。在完成数据库中的工作后断开连接。,2019/12/5,数据库入门,18,连接数据库-PB,TransactionSQLCA/事务对象sqlca.DBMS=ProfileString(gs_inifile,DATABASE,dbms,MSS)sqlca.DATABASE=ProfileString(gs_inifile,DATABASE,DATABASE,KF)sqlca.userid=ProfileString(gs_inifile,DATABASE,userid,dbo)sqlca.dbpass=ProfileString(gs_inifile,DATABASE,dbpass,)sqlca.logid=ProfileString(gs_inifile,DATABASE,logid,sa)sqlca.logpass=ProfileString(gs_inifile,DATABASE,LogPassWord,)sqlca.servername=ProfileString(gs_inifile,DATABASE,ServerName,(local)sqlca.dbparm=ProfileString(gs_inifile,DATABASE,Dbparm,)sqlca.AutoCommit=FALSEconnectUsingSQLCA;/打开连接DisconnectUsingSQLCA;/切断连接,/ProfilesssSQLCA.DBMS=ODBCSQLCA.AutoCommit=FalseSQLCA.DBParm=ConnectString=DSN=ExcelFiles;UID=;PWD=连接Access/ProfileAccessSQLCA.DBMS=ODBCSQLCA.AutoCommit=FalseSQLCA.DBParm=ConnectString=DSN=MSAccessDatabase;UID=;PWD=“/VB-1cn.OpenDriver=SQLServer;Server=Server1;Uid=SA;Pwd=;Database=northwind/VB2cn.Provider=sqloledb“ProvStr=Server=MyServer;Database=northwind;Trusted_Connection=yescn.OpenprovStr,2019/12/5,数据库入门,19,获取数据-SQL语句,Stringls_empl_name/变量定义Selectempl_nameINTO:ls_empl_nameFROMbse_employeeWhereempl_no=systemUsingSQLCA;ifsqlca.sqlcode0then/失败Else/.成功EndifLongld_id=0Stringas_table=“tableXXX”/updateUPDATEsys_system_idSETid_counter=:ld_idWHEREid_table_name=:as_tableUsingSQLCA;,2019/12/5,数据库入门,20,获取数据-Datawindow,/Dw_listDatawindow/d_employee_editDatawindowObjectdw_list.SetTransobject(SQLCA)dw_list.Retrieve(g_userinfo.is_dep_no,g_userinfo.is_empl_cls)./保存数据ll_ret=dw_list.update(TRUE,TRUE)/判断Ifll_ret=1thenCommit;/usingSQLCAElseRollback;/usingSQLCAMessageBox(提示,保存时出错!)Endif,2019/12/5,数据库入门,21,与数据库连接Datawindow,2019/12/5,数据库入门,22,Transact-SQL语言简介,标示符:createTableemployee(empl_nochar(10)PRIMARYKEY,empl_namevarchar(20),ageintdefault0,.)数据类型:函数:表达式:运算符:注释关键字:,2019/12/5,数据库入门,23,创建与删除表,CreateTableCREATETABLEdbo.bse_department(dep_novarchar(10)notNULL,dep_tycodechar(1)NULL,dep_namechar(10)NULL,dep_no1char(4)NULL,dep_name1char(10)NULL,dep_bld_datedatetimeNULL,dep_vendor_sharedsmallintNULL,dep_telnochar(20)NULL)ONPRIMARYGOdroptabledroptabledbo.bse_departmentGO,2019/12/5,数据库入门,24,更改数据,InsertINSERTINTObse_department(dep_no,dep_name)VALUES(KFB,开发部)GOUpdate:UPDATEbse_departmentSETdep_name=developmentWHEREdep_no=KFBGODeleteDeletefrombse_departmentWHEREdep_no=KFB,2019/12/5,数据库入门,25,简单查询,SelectfromWhereSELECT*FROMbse_departmentWHERE(dep_tycode=1)查询统计:SELECTdep_noAS部门编号,COUNT(*)AS部门人数FROMbse_employeeGROUPBYdep_no,2019/12/5,数据库入门,26,联合查询,联合查询JOIN(INNER,LEFT,RIGHT)SELECTbse_department.dep_name,COUNT(*)AS部门人数FROMbse_employeeINNERJOINbse_departmentONbse_employee.dep_no=bse_department.dep_noGROUPBYbse_department.dep_name,bse_employee.dep_no,2019/12/5,数据库入门,27,聚合函数,SUM()AVG()COUNT()MAX()MIN()SelectCOUNT(*)fromtable1Selectsum(column1)fromtable2,2019/12/5,数据库入门,28,结果集组合,UNIONSelect*fromtableAUNIONSelect*fromtableBUNIONSelect*fromtableCNote:结果集结构必须相同。,2019/12/5,数据库入门,29,子查询,WHEREexpNOTIN(subquery)WHEREexpcomparison_op(subquery)WHERENOTEXISTS(subquery)例:SELECT*FROMbse_employeeWHERE(dep_noNOTIN(SELECTdep_noFROMbse_departmentWHEREdep_no0000),2019/12/5,数据库入门,30,多维汇总数据,CUBESELECTbse_department.dep_name,bse_employee.empl_cls,COUNT(*)AS部门人数FROMbse_employeeINNERJOINbse_departmentONbse_employee.dep_no=bse_department.dep_noGROUPBYbse_department.dep_name,bse_employee.empl_clsWITHCUBERollUpSELECTbse_department.de

温馨提示

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

评论

0/150

提交评论