SQL Server 数据库设计

SQL Server 数据库设计,第1张

SQL Server 系统数据库在安装软件时自动创建,用于协助系统共同完成对数据库的 *** 作;也是数据库运行的基础;

1,master数据库

是SQL Server 2012的核心数据库,如果损坏则数据库软件无法运行,主要包含如下主要信息:

1)所有用户登陆名和用户ID所属角色

2)数据库存储路径

3)服务器中数据库的名称和相关信息

4)系统配置设置, SQL Server 初始化信息

2,model数据库

在创建数据库时,总是以一套预定义的标准为模板进行创建的。以model数据库为模板来创建其他数据库。且model数据库是tempdb数据库的基础。

3,tempdb数据库

它是一个临时数据库,用来存储用户建立的临时表和临时存储过程,存储用户定义的全局变量值。它存在于SQL Server会话期间,会话结束,则关闭tempdb数据库,且数据库丢失。

4,msdb数据库

用于代理计划警报和作业

SQL Server 数据库存储文件

数据库文件是由数据文件和事务日志文件组成。

1,数据库文件指数据库中用来存储数据库数据和数据库对象的文件,一个数据库只能由一个主数据库文件,扩展名为 mdf

2, 次数据库文件包含除主数据库文件外的所有数据文件,一个数据库可以没有次数据库文件,也可以由多个,扩展名为 ndf

3, 日志文件由一系列日志记录组成,它记录了存储数据库的更新情况等事务日志信息,用户对数据库进行的插入,删除,更新都会记录在日志文件中。数据库发生损坏时可根据日志文件分析出错原因,或者数据丢失时,使用事务日志恢复数据库。每个数据库至少要有一个日志文件。

SQL Server 数据库创建,使用T-SQL语言创建:

使用T-SQL语言删除数据库:

SQL Server 数据库迁移:

方法1:“分离/附加”数据库,即把数据库文件(MDF)和对应的日志文件(LDF)拷贝到其它磁盘上作备份,然后把这两个文件再拷贝到任何需要这个数据库的系统之中。

分离数据库就是将某个数据库从SQL Server数据库列表中删除,使其不再被SQL Server管理和使用,但该数据库的文件(MDF)和对应的日志文件(LDF)完好无损。分离成功后,就可以把该数据库文件(MDF)和对应的日志文件(LDF)拷贝到其它磁盘中作为备份保存。

分离之前,设置数据库为单个用户,并记住该数据库所在路径。

“任务”—“分离”

然后分离数据库页面选中“更新统计信息”复选框。若“消息”列中没有显示存在活动连接,则“状态”列显示为“就绪”;否则显示“未就绪”,此时必须勾选“删除连接”列的复选框。分离后资源管理器中数据库消失

将需要附加的数据库文件和日志文件拷贝到某个已经创建好的文件夹中。

右击数据库对象,并在快捷菜单中选择“附加”命令,打开“附加数据库”窗口。

添加—选择需要附件的数据库的MDF文件。“附件为”数据库名称可修改。

master,model,msdb,northwind,pubs,tempdb

pubs示例数据库

pubs示例数据库以一个图书出版公司为模型,用于演示Microsoft_SQLServer数据库中可用的许多选项。该数据库及其中的表经常在文档内容所介绍的示例中使用。

Northwind示例数据库

NorthwindTraders示例数据库包含一个名为NorthwindTraders的虚构公司的销售数据,该公司从事世界各地的特产食品进出口贸易。

master数据库

master数据库记录SQLServer系统的所有系统级别信息。它记录所有的登录帐户和系统配置设置。master数据库是这样一个数据库,它记录所有其它的数据库,其中包括数据库文件的位置。master数据库记录SQLServer的初始化信息,它始终有一个可用的最新master数据库备份。

tempdb数据库

tempdb数据库保存所有的临时表和临时存储过程。它还满足任何其它的临时存储要求,例如存储SQLServer生成的工作表。tempdb数据库是全局资源,所有连接到系统的用户的临时表和存储过程都存储在该数据库中。tempdb数据库在SQLServer每次启动时都重新创建,因此该数据库在系统启动时总是干净的。临时表和存储过程在连接断开时自动除去,而且当系统关闭后将没有任何连接处于活动状态,因此tempdb数据库中没有任何内容会从SQLServer的一个会话保存到另一个会话。

默认情况下,在SQLServer在运行时tempdb数据库会根据需要自动增长。不过,与其它数据库不同,每次启动数据库引擎时,它会重置为其初始大小。如果为tempdb数据库定义的大小较小,则每次重新启动SQLServer时,将tempdb数据库的大小自动增加到支持工作负荷所需的大小这一工作可能会成为系统处理负荷的一部分。为避免这种开销,可以使用ALTERDATABASE增加tempdb数据库的大小。

model数据库

model数据库用作在系统上创建的所有数据库的模板。当发出CREATEDATABASE语句时,新数据库的第一部分通过复制model数据库中的内容创建,剩余部分由空页填充。由于SQLServer每次启动时都要创建tempdb数据库,model数据库必须一直存在于SQLServer系统中。

msdb数据库

msdb数据库供SQLServer代理程序调度警报和作业以及记录 *** 作员时使用。

CREATE OR REPLACE PROCEDURE 存储过程名(in_id IN VARCHAR2,out_wage OUT VARCHAR2)

ASBEGINSELECTwage(此为你数据库表中员工工资字段名)into out_wage FROM 员工工资表名WHEREid(此为你数据库表中员工工号字段名)=in_id;

END存数过程名;in_id为输入的员工工号;out_wage为查询后输出地工资。在此例中,它们为VARCHAR2,设置的为NUMBER类型,要相应做修改。

扩展资料

这类语言主要提供以下功能,让用户可以设计出符合应用需求的程序:

1、变量说明

2、ANSI(美国国家标准化组织)兼容的SQL命令(如Select,Update…)

3、一般流程控制命令(if…else…、while…)

4、内部函数

种类

1系统存储过程

以sp_开头,用来进行系统的各项设定取得信息相关管理工作。

2本地存储过程

用户创建的存储过程是由用户创建并完成某一特定功能的存储过程,事实上一般所说的存储过程就是指本地存储过程。

3临时存储过程

分为两种存储过程:

一是本地临时存储过程,以井字号(#)作为其名称的第一个字符,则该存储过程将成为一个存放在tempdb数据库中的本地临时存储过程,且只有创建它的用户才能执行它;

二是全局临时存储过程,以两个井字号(##)号开始,则该存储过程将成为一个存储在tempdb数据库中的全局临时存储过程,全局临时存储过程一旦创建,以后连接到服务器的任意用户都可以执行它,而且不需要特定的权限。

4远程存储过程

在SQLServer2005中,远程存储过程(RemoteStoredProcedures)是位于远程服务器上的存储过程,通常可以使用分布式查询和EXECUTE命令执行一个远程存储过程。

5扩展存储过程

扩展存储过程(ExtendedStoredProcedures)是用户可以使用外部程序语言编写的存储过程,而且扩展存储过程的名称通常以xp_开头。

参考资料来源:百度百科-存储过程

SQL的调用可以分为函数和存储过程。

个人理解,其实函数和存储过程是相似的,至少在引用的时候跟函数很是一样。或者干脆把存储过程理解为另一种函数,另一种经过优化的函数。它的优点在于,存储过程在被编译后会被直接保存在数据库中,成为数据库的一部分,以后就可以反复调用,运行速度快,效率高,这些是函数做不到的。

存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。

种类

1系统存储过程

以sp_开头,用来进行系统的各项设定取得信息相关管理工作。

2本地存储过程

用户创建的存储过程是由用户创建并完成某一特定功能的存储过程,事实上一般所说的存储过程就是指本地存储过程。

3临时存储过程

分为两种存储过程:

一是本地临时存储过程,以井字号(#)作为其名称的第一个字符,则该存储过程将成为一个存放在tempdb数据库中的本地临时存储过程,且只有创建它的用户才能执行它;

二是全局临时存储过程,以两个井字号(##)号开始,则该存储过程将成为一个存储在tempdb数据库中的全局临时存储过程,全局临时存储过程一旦创建,以后连接到服务器的任意用户都可以执行它,而且不需要特定的权限。

4远程存储过程

在SQL Server2005中,远程存储过程(Remote Stored Procedures)是位于远程服务器上的存储过程,通常可以使用分布式查询和EXECUTE命令执行一个远程存储过程。

5扩展存储过程

扩展存储过程(Extended Stored Procedures)是用户可以使用外部程序语言编写的存储过程,而且扩展存储过程的名称通常以xp_开头。

数据存储名称有很多种,以下是一些常见的:

1 数据库(Database):以表格形式存储数据的一种数据集合。

2 文件系统(File System): *** 作系统中用于管理文件和目录的一种数据存储方式。

3 缓存(Cache):一种高速存储器,用于临时存储经常被访问的数据,以提高访问速度。

4 数据仓库(Data Warehouse):用于存储大量历史数据的一种数据存储系统。

5 NoSQL数据库:一种非关系型数据库,用于存储非结构化数据。

6 分布式文件系统(Distributed File System):将数据分散存储在多个服务器上的一种数据存储方式。

7 内存数据库(In-Memory Database):将数据存储在内存中的一种高速数据存储方式。

8 对象存储(Object Storage):将数据存储为对象的一种数据存储方式,常用于云存储。

引用楼主

的回复:

如题

,我想用C#建一个

临时表

,并把该临时表发送给

SQL2008

的一个

存储过程

,在存储过程中把临时表的数据保存到实际表中这个储过程改怎么写啊。。求

大仙

们帮忙!!感激不尽。。。谢谢!

利用固态硬盘(SSD)技术的优势设计数据库应用架构是非常有吸引力的一件事。特别值得注意的是,固态硬盘并行访问数据的能力已经有了很大的提升。这些提升使得固态硬盘对于许多类型的数据库应用几乎能达到了随机访问内存存储的性能,而成本只是其八分之一。

在过去的几年里,固态硬盘的性能得到了突飞猛进的增长,同时相比于传统硬盘和RAM,其成本却在持续降低。但是要利用好这些改进的优势,需要掌握存储特性选择合适的AWS实例大小,理解应用特性并利用合适的编程语言。

掌握AWS选项

AWS IaaS EC2实例可以配置不同级别的存储:

A)内存。对应于传统物理计算机的RAM。

B)实例存储。也称为临时存储。它对应于传统物理计算机的磁盘大小。

C)灵活的持久化补充存储(比如EBS和S3)。基本上可以把它视为物理PC的网络存储。

Amazon现在把SSD作为部署临时存储和通用存储的默认配置,也是EBS的默认配置(早期的实例类型默认不是SSD)。EBS的其它好处是存储系统可以在数据库服务器本身退役以后仍然继续可用。

此外,AWS还提供SSD存储作为Amazon DynamoDB的默认选项。SSD同时也是Amazon RDS和Amazon

Redshift的可选配置。这个配置非常好,它可以降低数据库应用需要的开发代价。但是,如果企业需要部署其它数据库,也有很多其它可配置项可以帮助他

们利用到SSD的并行特性。

以上就是关于SQL Server 数据库设计全部的内容,包括:SQL Server 数据库设计、SQLServer2000包含哪些系统数据库(sqlserver2005属于什么数据库系统)、创建一个存储过程,以员工号为参数,输出该员工的工资。(急)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9761283.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存