随笔分类 -  DB:Sql Server

摘要:0.参考文献1.恢复模式SQL Server 备份和还原操作发生在数据库的恢复模式的上下文中。恢复模式旨在控制事务日志维护。“恢复模式”是一种数据库属性,它控制如何记录事务,事务日志是否需要(以及允许)备份,以及可以使用哪些类型的还原操作。有三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式。通常,数据库使用完整恢复模式或简单恢复模式。可以在执行大容量操作之前切换到大容量日志恢复模式,以补充完整恢复模式。数据库可以随时切换为其他恢复模式。1.1恢复模式概述下表概述了这三种恢复模式。恢复模式说明工作丢失的风险能否恢复到时点?简单(SIMPLE)无日志备份。自动回收日志空间以减少空间需求 阅读全文
posted @ 2012-06-27 10:27 xwdreamer 阅读(10742) 评论(0) 推荐(3) 编辑
摘要:参考文献:1.圖文教你怎樣配置Database Mail+JOB(MS_SQL2005以上版本)(按照这个教程完成配置)2.SQL SERVER 2008配置Database Mail –用SQL 数据库发邮件(官方教程,从老外那边翻译过来的,在smtp配置上没有文献1有价值)3.配置SQL Server Job运行成功或失败时发送电子邮件通知正文database mail配置具体可以参考文献1,配置的重点是邮件的smtp服务器配置,具体参考如下图1.在Outgoing mail server(SMTP)中,email address地址就是你用来给别人发送邮件的数据库邮件地址。而server 阅读全文
posted @ 2012-06-26 15:37 xwdreamer 阅读(4808) 评论(0) 推荐(0) 编辑
摘要:参考文献:http://zjland.blog.51cto.com/289954/58716http://msdn.microsoft.com/en-us/library/ms191439.aspx正文SQL Server Agent的重点是计划(Schedule)和作业(Job),我们创建作业,然后将作业添加到某一个计划中去,让Agent自动帮我们运行即可。比如我们这里需要实现自动备份数据库的功能。我们新建一个备份数据库的作业,然后将这个作业添加到一个每天晚上11点执行的计划中去,最后把这个计划交个Agent就可以了。创建作业并将作业添加到计划:在“对象资源管理器”中,连接到 SQL Ser 阅读全文
posted @ 2012-06-26 14:11 xwdreamer 阅读(2078) 评论(0) 推荐(1) 编辑
摘要:参考文献http://database.51cto.com/art/201009/224075.htm正文要想成功访问 SQL Server 数据库中的数据, 我们需要两个方面的授权:获得准许连接 SQL Server 服务器的权利;获得访问特定数据库中数据的权利(select, update, delete, create table ...)。假设,我们准备建立一个 dba 数据库帐户,用来管理数据库 mydb。1. 首先在 SQL Server 服务器级别,创建登陆帐户(create login)--创建登陆帐户(create login)create login dba with pa 阅读全文
posted @ 2012-06-25 22:17 xwdreamer 阅读(143406) 评论(1) 推荐(11) 编辑
摘要:参考文献:http://social.msdn.microsoft.com/Forums/en-US/sqlgetstarted/thread/ec2ed3ae-eae9-427f-b8ad-9605fe67477a1.在http://msftdbprodsamples.codeplex.com/releases/view/55330下载AdventureWorks2012 Data File,下载后的文件名是AdventureWorks2012_Data.mdf。2.使用sqlserver management studio来attach(附加数据库)。3.我们下载的只有.mdf文件,没有l 阅读全文
posted @ 2012-06-25 17:15 xwdreamer 阅读(9533) 评论(4) 推荐(0) 编辑
摘要:参考文献http://msdn.microsoft.com/zh-cn/library/ms188659.aspx服务器级别角色为帮助您管理服务器上的权限,SQL Server 提供了若干角色。这些角色是用于对其他主体进行分组的安全主体。服务器级角色的权限作用域为服务器范围。(“角色”类似于 Windows 操作系统中的“组”。)提供固定服务器角色是为了方便使用和向后兼容。应尽可能分配更具体的权限。SQL Server 提供了九种固定服务器角色。无法更改授予固定服务器角色的权限。从 SQL Server 2012 开始,您可以创建用户定义的服务器角色,并将服务器级权限添加到用户定义的服务器角色 阅读全文
posted @ 2012-06-25 16:02 xwdreamer 阅读(18866) 评论(0) 推荐(2) 编辑
摘要:参考文献:sql server系统表详细说明下列这些系统表都是存放在master数据库下的Views中,而不是在Tables中。 系统表数据库功能sysaltfiles 主数据库保存数据库的文件syscharsets 主数据库字符集与排序顺序sysconfigures 主数据库配置选项syscurconfigs主数据库当前配置选项sysdatabases主数据库服务器中的数据库syslanguages主数据库语言syslogins主数据库登陆帐号信息sysoledbusers主数据库链接服务器登陆信息sysprocesses主数据库进程sysremotelogins主数... 阅读全文
posted @ 2012-06-25 14:47 xwdreamer 阅读(1433) 评论(0) 推荐(0) 编辑
摘要:参考文献深入了解SQLServer系统数据库工作原理(转)正文数据库管理员(DBA)的一项基本的技能是对SQL数据库引擎的系统数据库的深刻理解。数据库开发人员了解SQLSERVER自带的系统数据库也是十分有用的。下面就列出了其中的一些系统数据库。(注:如果你决定研究一下这些系统数据库,那么你需要有一个开发数据库。)Master Master数据库保存有放在SQLSERVER实体上的所有数据库,它还是将引擎固定起来的粘合剂。如果不使用主数据库,SQLSERVER就不能启动,所以你必须要小心地管理好这个数据库。对这个数据库进行常规备份是十分必要的。建议在数据库发生变更的时候备份master数据库. 阅读全文
posted @ 2012-06-25 14:00 xwdreamer 阅读(9568) 评论(0) 推荐(0) 编辑
摘要:参考文献:1.MySql与oracle的JDBC测试程序2.查看sqlserver的端口号代码示例在我的机器上安装了多个版本的sqlserver数据库,那么如何区分这两个数据库服务器呢。这就要用到前一篇博客中提到的数据库服务端口号,详细见参考2。此处端口号5419对应的是sqlserver2008服务器,端口号5413对应的是sqlserver2012服务器。具体的数据库名称在连接字符串的后面给出。package edu.sjtu.erplab.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.s 阅读全文
posted @ 2012-06-23 16:12 xwdreamer 阅读(8915) 评论(0) 推荐(0) 编辑
摘要:背景 这几天想写一个使用java连接sqlserver的数据库连接测试程序。但是在查看数据库连接字符格式以后发现需要sqlserver数据库服务的端口号。在安装sqlserver的时候也没有提到端口号的问题,以前安装mysql的时候倒是见到过3306这个端口号,安装oracle的时候1521这个端口号也没有看到。不过oracle连接的时候都用的是1521,比如oracle的的数据库连接字符串格式为:jdbc:oracle:thin:@localhost:1521:SID。不知道安装两个oracle数据库是否还是1521这个端口号。通过存储过程查看 闲话莫提,我们直接讲解如何查看端口号。需要.. 阅读全文
posted @ 2012-06-23 15:49 xwdreamer 阅读(248715) 评论(3) 推荐(10) 编辑
摘要:参考文献http://blog.csdn.net/andyelvis/article/details/24468651、把主键定义为自动增长标识符类型MySql在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值。例如:create table customers(id int auto_increment primary key not null, name varchar(15));insert into customers(name) values("name1"),("name2");select id f 阅读全文
posted @ 2012-06-08 21:00 xwdreamer 阅读(99291) 评论(4) 推荐(5) 编辑
摘要:1.导入MySql数据库参考文献:http://zhuaxia.org/blog/post/1451.1.LOAD DATA INFILE语法因为获得的数据库文件是一个文本文件www.csdn.net.sql,因此需要用到mysql中的LOAD DATA INFILE命令,LOAD DATA INFILE的语法结构如下:View Code LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name' [REPLACE | IGNORE] INTO TABLE tbl_name [CHARACTER SET c. 阅读全文
posted @ 2012-06-08 13:32 xwdreamer 阅读(5018) 评论(2) 推荐(2) 编辑
摘要:参考文献http://hi.baidu.com/zdfgng/blog/item/dd5f88359a1cd0260b55a9ce.html题目假如要查询在a表中存在,但是在b表中不存在的记录,应该如何查询。为了便于说明,我们假设a表和b表都只有一个字段id,a表中的记录为{1,2,3,4,5},b表中的记录为{2,4},那么我们需要通过一个sql查询得到{1,3,5}这样的结果集。一般解法(效率低)看到这个题目,我们首先想到的可能就是not in这样的关键字,具体的查询语句如下:select ta.* from ta where ta.id not in(select tb.id from 阅读全文
posted @ 2012-06-01 13:29 xwdreamer 阅读(24458) 评论(3) 推荐(6) 编辑
摘要:参考文献:http://www.w3school.com.cn/sql/sql_top.asp1.TOP 子句TOP 子句用于规定要返回的记录的数目。对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。注释:并非所有的数据库系统都支持 TOP 子句。1.1SQL Server 的语法:SQL Server中使用top关键字SELECT TOP number|percent column_name(s) FROM table_name 可以参考我以前的博客:sql查询选择表中从10到15的记录1.2MySQL 语法:MySQL使用limit关键字SELECT column_name(s). 阅读全文
posted @ 2011-08-02 19:12 xwdreamer 阅读(1686) 评论(0) 推荐(0) 编辑
摘要:下载SQL SERVER2008 下载具有高级服务的 Microsoft SQL Server 2008 Express,具有高级服务的 Microsoft SQL Server 2008 Express 是 SQL Server Express 数据平台的一款免费、易用的版本,它包括高级图形管理工具(Management Studio),而且,对于报表制作以及基于文本的高级搜索,都提供了强大功能。此版本提供了强大而可靠的数据管理工具,它功能丰富,能够保护数据并提高性能。它是小型服务器应用程序和本地数据存储区的理想选择。我的电脑是64位的,所以我下载的是SQLEXPRADV_x64_CH... 阅读全文
posted @ 2011-05-31 12:28 xwdreamer 阅读(50339) 评论(0) 推荐(2) 编辑
摘要:示例以下示例演示修改数据时的快照隔离行为。该代码执行下列操作:连接到 AdventureWorks 示例数据库并启用 SNAPSHOT 隔离。创建一个名为 TestSnapshotUpdate 的表并插入三行示例数据。使用 SNAPSHOT 隔离开始但是不完成 sqlTransaction1。在事务中选择三行数据。创建第二个与 AdventureWorks 的 SqlConnection,并使用 READ COMMITTED 隔离级别创建第二个事务,更新在 sqlTransaction1 中选择的其中一行的值。提交 sqlTransaction2。返回 sqlTransaction1 并尝试更 阅读全文
posted @ 2010-10-13 21:41 xwdreamer 阅读(452) 评论(0) 推荐(0) 编辑
摘要:根据微软《使用快照隔离》的内容,运行了其中的例子并给出中文注释。示例以下示例通过尝试访问锁定的数据,演示不同隔离级别的行为,并非要在生产代码中使用。该代码连接到 SQL Server 中的 AdventureWorks 示例数据库上,并创建一个名为 TestSnapshot 的表,然后插入一行数据。该代码使用 ALTER DATABASE Transact-SQL 语句对数据库启用快照隔离,但是不设置 READ_COMMITTED_SNAPSHOT 选项,让默认的 READ COMMITTED 隔离级别的行为生效。然后,该代码执行下列操作:开始但是不完成 sqlTransaction1,sql 阅读全文
posted @ 2010-10-13 21:22 xwdreamer 阅读(1440) 评论(0) 推荐(0) 编辑
摘要:快照隔离(Snapshot Isolation)特性1、写入程序不会阻碍读取程序2、Snapshot isolation must be enabled for DBALTER DATABASE 数据库 SET allow_snapshot_isolation ON3、Snapshot isolation must be enabled for connection Set transaction isolation level snapshot4、UPDATE transactions keep old versions of data in a linked list5、新的隔离级别提供了 阅读全文
posted @ 2010-10-13 15:57 xwdreamer 阅读(3011) 评论(0) 推荐(0) 编辑
摘要:编写的新闻管理系统添加新闻以后标题和内容都变成了"???",插入语句如下:insert into news_info(info_title,info_content) values('标题','内容') 在网上查了一下,这是因为我的标题和内容的数据类型分别为nvarchar和ntext,而我的数据库排序规则是"SQL_Latin1_General_CP1_CI_AS",只要将其改为"Chinese_PRC_CI_AS"就可以了。可以使用Sql server management studio改,也可以使 阅读全文
posted @ 2010-05-20 11:50 xwdreamer 阅读(8439) 评论(2) 推荐(1) 编辑
摘要:记得以前用SqlServer 2000的时候在“右键数据库->所有任务->导入数据/导出数据”这个选项,但是最近在使用SqlServer 2005 express的时候发现居然没有“导入/导出”功能,这个让人相当郁闷。 后来网上一查才知道是因为我用的是express版本的缘故,这个版本是免费版,微软当然不能将所有功能都对免费版开放,只有在那些付费版本上才有“导入导出”数据的功能。那么难道我们就这样束手无策了吗? 下面我来介绍一种使用SqlServer 2000的“工具->数据转换服务->导入/导出数据”来实现SqlServer 2005 express的导入/导出功能。 阅读全文
posted @ 2010-03-15 16:01 xwdreamer 阅读(7328) 评论(0) 推荐(0) 编辑