SQL Server 2008出现在微软数据平台愿景上是因为它使得公司可以运行他们最关键任务的应用程序,同时降低了管理数据基础设施和发送观察和信息给所有用户的成本。 这个平台有以下特点: 1. 可信任的——使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。 2. 高效的——使得公司可以降低开发和管理他们的数据基础设施的时间和成本。 3. 智能的——提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。
为了更好的将数据库技术应用到WIZnet公司,并用于数据的查询、修改等,我对公司员工进行了关于SQL Server 2008的培训,旨在让WIZnet员工在最短的时间内熟悉SQL Server 2008,并进行一些简单的数据操作,便于工作。 我们采用SQL Server 2008 R2版本,安装过程非常简单,特别需要注意的是在“服务器配置”页面中,需要将SQL server browser的启动类型从“已禁用”改成“自动”,如图1所示。 图1:SQL Server 2008安装过程中的服务器配置页面 因为当SQL Server Browser 服务不运行时,如果您提供了正确的端口号或命名管道,仍可以连接到 SQL Server。例如,如果 SQL Server 的默认实例在 1433 端口上运行,则可以使用 TCP/IP 连接到此默认实例。但是,如果 SQL Server Browser 服务未运行,则以下连接无效: 1. 在未完全指定所有参数(例如 TCP/IP 端口或命名管道)的情况下,组件尝试连接到命名实例。 2. 生成或传递其他组件随后要用来进行重新连接的服务器/实例信息的组件。 3. 未提供端口号或管道就连接到命名实例。 4. 在未使用 TCP/IP 1433 端口的情况下,将 DAC 连接到命名实例或默认实例。 5. OLAP 重定向程序服务。 6. 枚举 SQL Server Management Studio、企业管理器或查询分析器中的服务器。 如果在客户端服务器方案中使用 SQL Server(例如,应用程序通过网络访问 SQL Server),那么,若要停止或禁用 SQL Server Browser 服务,必须为每个实例分配一个特定端口号,并编写客户端应用程序代码以便始终使用该端口号。此方法存在如下问题: 1. 必须更新和维护客户端应用程序代码才能确保它连接到正确的端口。 2. 如果服务器上的其他服务或应用程序可以使用您为每个实例选择的端口,则会导致 SQL Server 实例不可用。
在安装完成SQL Server 2008后启动数据库程序,在单击模式下,选择服务器类型为“数据库引擎”,身份验证为“Windows身份验证”,单击“连接”按钮登录本机数据库,如图2所示。
图2:SQL Server 2008登录界面 登录后,在界面左边会显示对象资源管理器,如图3所示。
图3:对象资源管理器界面 在数据库选项中单击右键,在弹出的菜单中选择“新建数据库”,在弹出的页面中,设置数据库名称为“WIZnet”,在逻辑名称中,名称为“WIZnet”的为存放行数据的文件,名称为“WIZnet_log”的为存放日志的文件,设置文件保存的路径,单击确定,如图4所示。
图4:新建数据库界面 点开数据库选项左边的加号,我们就能看到在系统数据库下有一个名为“WIZnet”的数据库,如图5所示。
图5:创建数据库成功 对于成功创建的数据库,我们可以进行数据表导入、创建数据表、查询数据表等一系列的操作。 后续中我们会继续为大家连载更多关于SQL Server 2008,希望大家喜欢。
前面一节,我们给大家分享了WIZnet员工SQLServer 2008培训笔记(一),点击这里(http://blog./?p=800)大家可以阅读第一部分,今天我们继续给大家分享更多WIZnet员工SQLServer 2008培训笔记,希望大家喜欢。 1.导入Excel数据 成功创建数据库后,我们可以进行创建数据表、导入数据表。下面我们来讲如何导入Excel格式的数据。 在导入数据之前,我们要检查Excel数据的格式,使Excel数据表中,只第一行包含列名,每一列只对应一个属性。例如,图1所示为Excel源数据格式,需要修改成图2所示的Excel数据格式。 ![]() 图1:源Excel数据表
2.Excel取消隐藏行和列 注意:如果Excel数据表中有隐藏数据,需要取消隐藏行和列,并删除隐藏数据,才能正确修改成图2的格式。例如上图1中,第19行以上的行被隐藏了,我们可以左键单击图1中的左上角,选中整个工作表。如图3所示,选择格式->隐藏和取消隐藏,我们可以看到一些隐藏和取消隐藏的操作选项,选择取消隐藏行和隐藏列,并删除多余数据,我们就可以得到图2所示的数据表。 ![]()
图3:Excel取消隐藏行和列操作 3.SQLServer 2008导入数据
在整理好Excel数据格式后,我们就可以对数据进行导入了,如图4所示,在对象资源管理器中选择数据库,单击右键->任务->导入数据,我们会看到图5所示的界面。 ![]()
图5:导入数据界面 如图6所示,选择数据源为Microsoft Excel,并选择文件路径,首行包含列名称选项默认勾选,单击下一步。 ![]()
图6:选择数据源 进入目标选择界面,如图7所示。目标数据库默认为对象资源管理器中右键选择的数据库,选择名称为WIZnet的数据库,单击下一步。 ![]()
图7:目标数据库选择界面 默认选择复制一个或多个表或视图的数据,单击下一步。 ![]() 在表和视图源中选择需要导入的数据表,其他设置可以默认,单击下一步。 ![]() 进入运行包界面,单击下一步。 ![]() 单击下一步,完成数据导入向导。 ![]() 单击完成,完成数据的导入。 ![]() 这样,在WIZnet数据库下的表文件中就有我们导入的表。如果没有,如下图所示,在表文件夹中单击右键->刷新,就可以看到我们导入的表了。 ![]()
后续中我们仍会继续给大家分享SQL Server 2008的更多学习笔记,敬请期待哦。
前面一节,我们给大家分享了WIZnet员工SQLServer 2008培训笔记(二),点击这里(http://blog./?p=830)大家可以阅读第一部分,今天我们继续给大家分享更多WIZnet员工SQLServer 2008培训笔记,希望大家喜欢。
导入Excel表后,我们可以对表列名的属性进行修改,如图1所示,右键单击数据表->设计。
图1:修改数据类型 SQL Server 2008不允许保存更改的解决方法在进入设计界面后,我们可以对数据列的数据类型进行修改,并规定该列是否可以为空,后续我们将详细讲述SQL Server 2008的数据类型。修改完数据类型的表格我们需要保存才能生效,但是在保存过程中有可能会提示“不允许保存更改。您所做的更改要求删除并重新创建以下表”,如图2所示。图2:不允许保存更改
这时候,我们需要做如下设置,具体方法为: 工具—选项—设计器—取消勾选“阻止保存要求重新创建表的更改”即可,如下图所示。
SQL Server 2008编辑所有行在图1中,我们可以看到菜单选项中有“选择前1000行”和“编辑前200行”选项,这在很多应用中很不方便,那么如何实现“编辑所有行”和“返回前所有行”或者自定义编辑行数和返回的行数呢?通过以下简单的几步即可实现。
具体方法为: 工具–选项–SQL Server对象资源管理器–命令,把其中的“编辑前<n>行命令的值”和“选择前<n>行命令的值”都改为0,之后确定。 再打开表,就变成“编辑所有行”和“选择所有行”。当然如果想要编辑指定的行数和返回指定的行数,可以不设置0,设置你想要的值即可。
稍后我们会继续为大家分享更多SQL Server2008的培训笔记,希望大家喜欢~~
大家好,前面我们为大家连载了数据库SQLServer2008的培训笔记1,2,3, 今天为大家继续分享第四篇,WIZnet员工SQL Server 2008培训笔记(三)请阅读 http://blog.csdn.net/wiznet2012/article/details/7548516
SQLServer2008设置开启远程连接
在SQL Server 2008实际应用中,管理员可以通过权限控制,设置其他人访问该数据库,以及对数据库的操作权限。这时候,需要设置SQL Server 2008的远程连接,其他人就可以在本地用SSMS连接远程服务器的SQL Server 2008。 下面我们就来讲述管理员如何创建用户,如何进行服务器上SQL Server 2008的配置等等。为了实现远程连接,我们需要做两个部分的配置: 1,SQL Server Management Studio Express(简称SSMS) 2,SQL Server配置管理器/SQL Server Configuration Manager(简称SSCM) 注意:有些设置生效需要重启 SQL Server服务器。 step 1: 打开SSMS,用windows身份连接数据库,登录后,右键选择“属性” step 2: 左侧选择“安全性”,选中右侧的“SQL Server和 Windows身份验证模式”以启用混合登录模式 step 3: 选择“连接”,勾选“允许远程连接此服务器”,然后点“确定” step 4: 展开“安全性”,右键选择“新建登录名” step 5: 在“常规”中,选择SQL Server身份验证模式,设置登录名和密码。若取消“强制实施密码策略”勾选,则下次登录不用重新设置密码。选择默认数据库是WIZnet。 step 6: 选择“用户映射”,在映射到此登录名的用户中勾选“WIZnet”,在数据库角色成员身份中勾选“db_owner”和“db_public” step 7: 选择“状态”,选中“启用”(默认),点击“确定” step 7: 右击数据库选择“方面” step 8: 将服务器配置的“RemoteAccessEnabled”属性设为“True”,点“确定” step 9: 至此SSMS已设置完毕.
step 10: 下面开始配置SSCM,选中左侧的“SQL Server服务”,确保右侧的“SQL Server”以及“SQL Server Browser”正在运行 step 11: 选中左侧“SQL Server服务”的“MSSQLSERVER的协议”。如图:右侧的TCP/IP默认是“已禁用”,双击打开设置面板将已启用选项修改为“是”
step 12: 选择“IP 地址”选项卡,设置端口“1433” step 13: 如图将“SQL Native Client 10.0配置”的“客户端协议”的”TCP/IP”也修改成“已启用” tep 14: 配置完成,重新启动SQL Server 2008。
此时应该可以使用了,但是还是要确认一下防火墙。
SQL Server 2005/2008 Express安装以后,默认情况下是禁用远程连接的。如果需要远程访问,需要手动配置。
打开防火墙设置。将SQLServr.exe(C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn\sqlservr.exe)添加到允许的列表中。
大家好,前面我们为大家分享了WIZnet员工的SQL Server 2008 培训笔记的前四篇,今天继续为大家分享第五篇。 WIZnet员工SQL Server 2008培训笔记(四)请参考:http://blog./?p=849
SQL Server 2008数据类型 在创建表时,必须为表中的每列指派一种数据类型。本节将介绍SQL Server中最常用的一些数据类型。即使创建自定义数据类型,它也必须基于一种标准的SQL Server数据类型。例如,可以使用如下语法创建一种自定义数据类型(Address),但要注意,它基于SQL Server标准的varchar数据类型。 1. CREATE TYPE Address 2. FROM varchar(35) NOT NULL 如果在SQL Server Management Studio的表设计界面中更改一个大型表中某列的数据类型,那么该操作可能需要很长时间。可以通过在Management Studio界面中脚本化这种改变来观察其原因。Management Studio再创建一个临时表,采用像tmpTableName这样的名称,然后将数据复制到该表中。最后,界面删除旧表并用新的数据类型重命名新表。当然,此过程中还涉及其他一些用于处理表中索引和其他任何关系的步骤。 如果有一个包含数百万条记录的大型表,则该过程可能需要花费十分钟,有时可能是数小时。为避免这种情况,可在查询窗口中使用简单的单行T-SQL语句来更改该列的数据类型。例如,要将Employees表中JobTitle列的数据类型改为varchar(70),可以使用如下语法。 1. ALTER TABLE HumanResources.Employee ALTER COLUMN JobTitle Varchar(70) 说明: 在转换为与当前数据不兼容的数据类型时,可能丢失重要数据。例如,如果要将包含一些数据(如15.415)的numeric数据类型转换为integer数据类型,那么15.415这个数据将四舍五入为整数。 您可能想对SQL Server表编写一个报表,显示表中每列的数据类型。完成这项任务的方法有很多种,但最常见的一种方法是连接sys.objects表和sys.columns表。在下面的代码中,有两个函数可能不太为您所熟悉。函数TYPE_NAME()将数据类型id转换为适当的名称。要进行反向操作,可使用TYPE_ID()函数。需要注意的另一个函数是SCHEMA_ID(),它用于返回架构的标识值。在需要编写有关SQL Server元数据的报表时,这是特别有用的。 1. SELECT o.name AS ObjectName, 2. c.name AS ColumnName, 3. TYPE_NAME(c.user_type_id) as DataType 4. FROM sys.objects o JOIN sys.columns c 5. ON o.object_id = c.object_id 6. WHERE o.name =’Department’ 7. and o.Schema_ID = SCHEMA_ID(‘HumanResources’) 该代码返回如下结果(注意,Name是一种用户定义的数据类型)。 1. ObjectName ColumnName DataType 2. ————————————————— 3. Department DepartmentID smallint 4. Department Name 5. Department GroupName Name 6. Department ModifiedDate 1. 字符数据类型 字符数据类型包括varchar、char、nvarchar、nchar、text以及ntext。这些数据类型用于存储字符数据。varchar和char类型的主要区别是数据填充。如果有一表列名为FirstName且数据类型为varchar(20),同时将值Brian存储到该列中,则物理上只存储5个字节。但如果在数据类型为char(20)的列中存储相同的值,将使用全部20个字节。SQL将插入拖尾空格来填满20个字符。 如果要节省空间,那么为什么还使用char数据类型呢?使用varchar数据类型会稍增加一些系统开销。例如,如果要存储两字母形式的州名缩写,则最好使用char(2)列。尽管有些DBA认为应最大可能地节省空间,但一般来说,好的做法是在组织中找到一个合适的阈值,并指定低于该值的采用char数据类型,反之则采用varchar数据类型。通常的原则是,任何小于或等于5个字节的列应存储为char数据类型,而不是varchar数据类型。如果超过这个长度,使用varchar数据类型的好处将超过其额外开销。 nvarchar数据类型和nchar数据类型的工作方式与对等的varchar数据类型和char数据类型相同,但这两种数据类型可以处理国际性的Unicode字符。它们需要一些额外开销。以Unicode形式存储的数据为一个字符占两个字节。如果要将值Brian存储到nvarchar列,它将使用10个字节;而如果将它存储为nchar(20),则需要使用40字节。由于这些额外开销和增加的空间,应该避免使用Unicode列,除非确实有需要使用它们的业务或语言需求。 接下来要提的数据类型是text和ntext。text数据类型用于在数据页内外存储大型字符数据。应尽可能少地使用这两种数据类型,因为可能影响性能但可在单行的列中存储多达2GB的数据。与text数据类型相比,更好的选择是使用varchar(max)类型,因为将获得更好的性能。另外,text和ntext数据类型在SQL Server的一些未来版本中将不可用,因此现在开始还是最好使用varchar(max)和nvarchar(max)而不是text和ntext数据类型。 表1-1列出了这些类型,对其作了简单描述,并说明了要求的存储空间。 表1-1
2. 精确数值数据类型 数值数据类型包括bit、tinyint、smallint、int、bigint、numeric、decimal、money、float以及real。这些数据类型都用于存储不同类型的数字值。第一种数据类型bit只存储0或1,在大多数应用程序中被转换为true或false。bit数据类型非常适合用于开关标记,且它只占据一个字节空间。其他常见的数值数据类型如表1-2所示。 表1-2
(续表)
SQL Server 2008数据类型(2) 如decimal和numeric等数值数据类型可存储小数点右边或左边的变长位数。Scale是小数点右边的位数。精度(Precision)定义了总位数,包括小数点右边的位数。例如,由于14.88531可为numeric(7,5)或decimal(7,5)。如果将14.25插入到numeric(5,1)列中,它将被舍入为14.3。 3. 近似数值数据类型 这个分类中包括数据类型float和real。它们用于表示浮点数据。但是,由于它们是近似的,因此不能精确地表示所有值。 float(n)中的n是用于存储该数尾数(mantissa)的位数。SQL Server对此只使用两个值。如果指定位于1~24之间,SQL就使用24。如果指定25~53之间,SQL就使用53。当指定float()时(括号中为空),默认为53。 表1-3列出了近似数值数据类型,对其进行简单描述,并说明了要求的存储空间。 表1-3
注意: real的同义词为float(24)。 4. 二进制数据类型 如varbinary、binary、varbinary(max)或image等二进制数据类型用于存储二进制数据,如图形文件、Word文档或MP3文件。其值为十六进制的0×0~0xf。image数据类型可在数据页外部存储最多2GB的文件。image数据类型的首选替代数据类型是varbinary(max),可保存最多8KB的二进制数据,其性能通常比image数据类型好。SQL Server 2008的新功能是可以在操作系统文件中通过FileStream存储选项存储varbinary(max)对象。这个选项将数据存储为文件,同时不受varbinary(max)的2GB大小的限制。 表1-4列出了二进制数据类型,对其作了简单描述,并说明了要求的存储空间。 表1-4
5. 日期和时间数据类型 datetime和smalldatetime数据类型用于存储日期和时间数据。smalldatetime为4字节,存储1900年1月1日~2079年6月6日之间的时间,且只精确到最近的分钟。datetime数据类型为8字节,存储1753年1月1日~9999年12月31日之间的时间,且精确到最近的3.33毫秒。 SQL Server 2008有4种与日期相关的新数据类型:datetime2、dateoffset、date和time。通过SQL Server联机丛书可找到使用这些数据类型的示例。 datetime2数据类型是datetime数据类型的扩展,有着更广的日期范围。时间总是用时、分钟、秒形式来存储。可以定义末尾带有可变参数的datetime2数据类型–如datetime2(3)。这个表达式中的3表示存储时秒的小数精度为3位,或0.999。有效值为0~9之间,默认值为3。 datetimeoffset数据类型和datetime2数据类型一样,带有时区偏移量。该时区偏移量最大为+/-14小时,包含了UTC偏移量,因此可以合理化不同时区捕捉的时间。 date数据类型只存储日期,这是一直需要的一个功能。而time数据类型只存储时间。它也支持time(n)声明,因此可以控制小数秒的粒度。与datetime2和datetimeoffset一样,n可为0~7之间。 表1-5列出了日期/时间数据类型,对其进行简单描述,并说明了要求的存储空间。 表1-5
6. 其他系统数据类型 还有一些之前未见过的数据类型。表1-6列出了这些数据类型。 表1-6
注意: cursor数据类型可能不用于Create Table语句中。 hierarchyid列是SQL Server 2008中新出现的。您可能希望将这种数据类型的列添加到这样的表中–其表行中的数据可用层次结构表示,就像组织层次结构或经理/雇员层次结构一样。存储在该列中的值是行在层次结构中的路径。层次结构中的级别显示为斜杠。斜杠间的值是这个成员在行中的数字级别,如/1/3。可以运用一些与这种数据类型一起使用的特殊函数。 XML数据存储XML文档或片段。根据文档中使用UTF-16或是UTF-8,它在尺寸上像text或ntext一样存储。XML数据类型使用特殊构造体进行搜索和索引。第15章将更详细地介绍这些内容。 7. CLR集成 在SQL Server 2008中,还可使用公共语言运行库(Common Language Runtime,CLR)创建自己的数据类型和存储过程。这让用户可以使用Visual Basic或C#编写更复杂的数据类型,以满足业务需求。这些类型被定义为基本的CLR语言中的类结构。第8章将更详细地介绍其管理部分的内容。 大家好,前面我们为大家分享了WIZnet员工的SQL Server 2008培训笔记的前五篇,今天继续为大家分享第六篇。 WIZnet员工SQL Server 2008培训笔记(五)请参考:
在数据表导入数据库之后,为了防止用户误改、误删数据等一系列操作破坏了数据源的完整性和正确性,或者我们希望将一台电脑的数据库文件移植到另一台电脑的数据库中。我们就需要对生成数据库备份文件(*.bak)或者备份源数据库文件(*.mdf),来确保数据库的正确性和完整性。 1. 通过备份文件还原 选中你要备份的数据库,单击右键->任务->备份,如下图所示。
显示如下对话框,数据库选项可以选择你想备份的数据库,备份集选项可以设置你备份文件的名称。
单击确定按钮,弹出备份文件成功对话框,则说明备份成功。
备份文件默认保存在C:\ProgramFiles\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\目录下(这里以SQLServer 2008默认安装为例),而在实际开发过程中,我们往往需要根据数据库本身的用途将数据库文件及其日志文件保存在硬盘的其它位置以方便管理。因此,我们可以通过单击“添加”按钮,会弹出如下的对话框。
设置备份文件名和文件路径,在目标字段就会添加你想备份文件的信息,单击“确定”按钮备份文件成功。
备份完成后,我们可以通过备份文件按需要对数据库进行还原。如下图,右击数据库,选择还原数据库。
弹出如下的对话框,在“目标数据库”中输入数据库名称,选择“源数据库”为备份的数据库,默认设置情况下单击确定,即可还原完整的数据库信息(也可以通过选项设置修改备份数据库的位置等其他基本信息)。
至此,通过备份文件还原数据库的方法就介绍完了。
2. 我们也可以通过数据库文件来添加和还原数据库,如下所示,右击数据库,选择附加。
在弹出的对话框中单击“添加”按钮,选择创建数据库时生成的文件(*.mdf),默认设置下单击确定即可完成数据库的还原。
![]() 大家好,前面我们为大家分享了WIZnet员工的SQL Server 2008培训笔记的前六篇,现在继续为大家分享第七篇——如何使用Report Builder 3.0创建数据库报表。 WIZnet员工SQL Server 2008培训笔记(六)请参考: 在使用数据库进行查询的过程中,我们可以通过查询语句获取各种所需要的统计信息,那么,如何将这种统计信息很好的展示到别人面前,而不是仅仅通过SQLServer的查询窗口进行查看呢?这时候,我们就可以通过数据报表来实现。 下面我通过一个简单的实例给大家演示一下如何使用ReportBuilder 3.0创建数据报表。 首先,我们需要安装 ReportBuilder 3.0,安装完成后,单击“开始”,依次指向“程序”和“MicrosoftSQL Server 2008 R2 Report Builder 3.0”,再单击“Report Builder 3.0”。此时将打开“入门”对话框。 ![]()
如上图所示,在左窗格中,确认已选中“新建报表”。在右窗格中,单击“表或矩阵向导”。 在“选择数据集”页中,选择“创建数据集”,然后单击“下一步”。将打开“选择数据源的连接”页面。 单击“新建”。此时将打开“数据源属性”对话框。 在“名称”中,为数据源键入名称,例如Customer_Status。(以字母、数字或下划线开头不能出现空格) 在“选择连接类型”中,确认已选择“MicrosoftSQL Server”。 在连接字符串中输入以下文本,其中<ServerName>为SQLServer的实例名称,<DatabaseName>为数据库的名称。 如果是初学者,可以单击“生成”按钮,进入连接属性的设置。 选择服务器名和数据库名,如果是本机则使用Windows身份验证,如果是连接到服务器的客户机,则使用服务器分配的用户名和密码使用SQLServer身份验证。完成后单击“确定”按钮。 单击“凭据”输入访问外部数据源所需的凭据。 若要验证是否能连接到数据源,请单击“测试连接”,将显示消息“已成功的创建连接”,单击确定。单击“下一步”。 在“设计查询”页的“数据库视图”中选中所需的表,默认选中表中所有的列,你也可以跟据需要选择其中的某些列,通过“运行查询”按钮可以查看。
单击“下一步”,进入“排列字段”界面,选择需要生成报表的数据,如下图所示。
单击“下一步”,对选择的字段进行预览。可以根据需求是否勾选“显示小计和总计”复选框。在本例中,取消勾选该复选框,并且取消勾选“展开/折叠组”复选框,单击下一步。 ![]()
在“选择样式”界面选择报表的风格,并单击“完成”按钮完成报表草稿的生成,如下图所示。
单击报表生成器左上方的“运行”可以查看生成的报表,可以根据外观和内容的需要在“设计”界面对报表列的属性进行修改。 |
|