SQL Server
文章平均质量分 82
yanjiangbo
后端开发工程师(PHP PYTHON GO)
展开
-
SQL Server中Table的知识框架
以下这些内容是了解SQL Server中table必须掌握的,至于其中的各个知识点,我会在以后的文章中逐一进行详述!Table1. Create table:CREATE TABLE dbo.customer(cust_id int,cust_name char(12),cust_phone char(11))Expla原创 2007-08-23 12:06:00 · 1433 阅读 · 0 评论 -
数据库的设计
三范式为数据库设计的基本原则。简要概括起来就是不可再分,完全依赖,不存在传递依赖。当然,还有更高级别的BCNF,4NF和5NF。第一范式(1NF):在关系模式R中的每一个具体关系r中,如果每个属性值 都是不可再分的最小数据单位,则称R是第一范式的关系。例:如职工号,姓名,电话号码组成一个表(一个人可能有一个办公室电话 和一个家里电话号码) 规范成为1NF有三种方法:1. 重复存原创 2009-08-27 14:01:00 · 1133 阅读 · 0 评论 -
With (nolock) 和 With (rowlock) 关键字
关系型数据库,如SQL Server,使用锁来避免多用户修改数据时的并发冲突。当一组数据被某个用户锁定时,除非第一个用户结束修改并释放锁,否则其他用户就无法修改该组数据。有些数据库,包括SQL Server,用锁来避免用户检索未递交的修改记录。在这些系统中,如果用户A在修改一组记录,则其他用户只有等用户A修改完毕了,才能检索。数据库在每个物理层上设置锁:记录行(row lock),数据页(原创 2009-08-28 11:56:00 · 10150 阅读 · 2 评论 -
数据库的优化 (Updating)
数据库的优化数据库的优化可以从多方面入手,比如增强硬件配置,优化数据库的设计,优化T-SQL语句的使用,下面我将一一列出:1. 良好的数据库设计原则必须考虑的问题:实现sql server数据库的优化,首先要有一个好的数据库设计方案。在实际工作中,许多sql server方案往往是由于数据库设计得不好导致性能很差。与每个表列相关的数据类型应该反映数据所需的最小存储空间,特别是对于被原创 2009-08-28 12:03:00 · 1447 阅读 · 1 评论 -
SQL Server的恢复模式
恢复模式(Recovery Model)旨在控制事务日志维护。恢复模式说明了工作丢失的风险,能否恢复到时点? SQL Server数据库有三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式。 相对于简单恢复模式而言,完整恢复模式和大容量日志恢复模式提供了更强的数据保护功能。这些恢复模式都是基于备份事务日志来提供完整的可恢复性及在最大范围的故障情形内防止丢失工作。通常,数据库使原创 2009-09-27 16:46:00 · 811 阅读 · 0 评论 -
SQL Server之组件划分
从不同的角度,我们可以把SQL Server数据平台划分为多个组件。我们下面按照SQL Server Internal Team通常的划分原则,把SQL Server数据平台划分为如下:SSAS: SQL Server Analysis Service。主要用来做分析用,比如Cube,可以从不同的角度审视数据。SSIS: SQL Server Integration Ser原创 2009-09-22 10:52:00 · 942 阅读 · 0 评论 -
char、varchar、text和nchar、nvarchar、ntext的区别
很多开发者进行数据库设计的时候往往并没有太多的考虑char, varchar类型,有的是根本就没注意,因为存储价格变得越来越便宜了,忘记了最开始的一些基本设计理论和原则,这点让我想到了现在的年轻人,大手一挥一把人民币就从他手里溜走了,其实我想不管是做人也好,做开发也好,细节的把握直接决定很多东西。当然还有一部分人是根本就没弄清楚他们的区别,也就随便选一个。在这里我想对他们做个简单的分析转载 2009-09-22 10:38:00 · 763 阅读 · 0 评论 -
为什么我们需要数据库
经济环境瞬息万变,企业需要随时应对各种压力与挑战,数据库横空出世,并且角色越来越重要,如下:管理各种各样的海量商业信息(存进数据库);整合所有有用的数据(出各种报表);洞察市场先机(数据分析); 总的来说,以上可以叫做商业智能(BI),数据库也从以前简单存储扩大到了洞察先机。数据库的每次升级实际上也就是把海量信息发挥商业创新价值推至一个新的制高点。原创 2010-05-26 14:34:00 · 1031 阅读 · 0 评论 -
SQL Server中的一些概念
SQL Server中的Transaction、error check、Lock、Isolation level和save point!原创 2010-08-04 16:00:00 · 777 阅读 · 0 评论 -
判断数据库是否存在
谁能告诉我他们的不同?原创 2010-08-20 13:57:00 · 912 阅读 · 0 评论 -
不错的数据库Wiki
有关数据库的Wiki转载 2010-09-20 12:31:00 · 1062 阅读 · 0 评论 -
SQL查询最优化
从四个方面来考虑如何优化数据库的效能原创 2010-09-20 12:47:00 · 1034 阅读 · 0 评论 -
Sql Server 中的Login,Schema,User,Role之间的关系
相信很多人初次看到这几个对象都会晕,今天我就带领大家一起来把这几个概念捋一捋。· Login Login 是Server一级的概念,表示登录Server的凭证,比如在Server_A上有一个数据库DA,那么想要访问数据库DA,第一步要做的事情就是先登录到Hosting该数据库的Server_A上,数据库管理员可以用下面的T-SQL语句来创建一个Login,暂且命原创 2009-08-26 12:39:00 · 7559 阅读 · 1 评论 -
数据库Permission管理的变迁
数据库权限的管理分为三个阶段,无权限管理阶段,单用户管理阶段和权限管理阶段,我们举例来说明数据库Permission管理的变迁。 李老板开了一个小公司,公司有个仓库,堆放了一些货物,由于仓库小,为了节约成本,这个仓库根本没有锁。只要知道仓库在哪里,就可以去取货。这种情况对应数据库来说,就是只要我知道数据库名和表名,我就可以对它进行操作。这对程序员来说当然是最方便了。这就是数据库的第一阶段:无权原创 2009-08-26 15:44:00 · 1097 阅读 · 0 评论 -
在SSMS中查询Excel 2007中的数据
select * FROM OPENROWSET(MICROSOFT.Ace.OLEDB.12.0,Excel 12.0;HDR=YES;DATABASE=F:/Newbb.xlsx,sheet1$)原创 2009-05-21 16:02:00 · 1168 阅读 · 0 评论 -
查看表的数据页的结构!
转贴:www.windbi.com数据库中表的存储是以page为单位的,怎么查看一个表的数据页结构呢?SQLServer2000/2005提供了一个读取数据页结构的命令DBCC Page。该命令为非文档化的命令,具体如下:DBCC Page ({dbid|dbname},filenum,pagenum[,printopt])具体参数描述如下:dbid 包含页面的数据库IDdbna转载 2007-08-23 18:00:00 · 2136 阅读 · 0 评论 -
SQL Server中的Transaction、error check、Lock、Isolation level和save point!
Transaction及错误检查SQL Server 中最重要的知识点莫过于事务,比如很多OLTP(联机事务处理)应用程序。什么是事务?事务就是一系列SQL语句的集合。事务包括隐性事务(例如Insert,Update等语句)和显性事务(用Begin Tran语句显式指明的事务)。事务中通常需要进行错误检查,用@@error来进行检查,比如:Begin Tran Upda原创 2007-08-23 18:33:00 · 2713 阅读 · 0 评论 -
MSSQL2005用语句创建数据库和表
MSSQL2005用语句创建数据库和表use mastergo if exists (select * from sysdatabases where name=Study)--判断Study数据库是否存在,是则删除 drop database Studygo EXEC sp_configure show advanced options, 1转载 2007-09-05 17:26:00 · 2176 阅读 · 0 评论 -
VS2005下C#+SQL2005创建CLR存储过程
VS2005下C#+SQL2005创建CLR存储过程--本帖为转贴加自己整理 Stored procedures are routines that cannot be used in scalar expressions. Unlike scalar functions, they can return tabular results and messages to the cli转载 2007-09-04 14:43:00 · 3543 阅读 · 0 评论 -
关于MS SQL Server数据库文件
关于数据库文件从总体来看,数据库文件包括如下一些文件:· 一个主数据文件(.mdf)· 0个或多个辅助数据文件(.ndf)· 1个或多个日志文件(.ldf)他们各自的作用又是什么呢?答案实际上很明显,我再次强调一下:· 主数据文件:除了存储数据以外,还可以跟踪其余的数据库文件,估计是存储了index页面和all原创 2007-09-11 19:06:00 · 3030 阅读 · 0 评论 -
数据库中User和Schema的关系!
如果我们想了解数据库中的User和Schema到底什么关系,那么让我们首先来了解一下数据库中User和Schema到底是什么概念。 在SQL Server2000中,由于架构的原因,User和Schema总有一层隐含的关系,让我们很少意识到其实User和Schema是两种完全不同的概念,不过在SQL Server2005中这种架构被打破了,User和Schema也被分开了。原创 2007-09-12 18:27:00 · 8555 阅读 · 7 评论 -
数据库中行级转换成列级的经典应用
-- Firstly,we need to create a tablecreate table score( Name varchar(10), Subject varchar(10), Result int)go -- Insert some data to score tableinsert into score(Name , Sub原创 2008-03-04 16:04:00 · 1060 阅读 · 0 评论 -
关于View的详细讲解
众所周知,View就是命名了的SQL语句,在数据库中以虚表形式存在的对象。为什么说是虚表,因为View中呈现给用户的数据完全是存储在来自于View的底层对象--- Table中。View有三种类型:Regular View,Updateable View以及Indexed View。下面我们就来探讨一下View的共性。创建View的语法为:Create View v_Name[Wi原创 2008-03-20 18:10:00 · 4725 阅读 · 0 评论 -
SQL Server 2005对T-SQL的增强之在聚合函数的后面使用over关键字
在sql server2005中可以在聚合函数的后面使用over(partition by col)替换group by的写法。有时候这样写比group by的形式要简短一些。下面我用AVG为例说明一下:下面的sql创建了一张student_class_grade的表,该表的三个字段分别为学生id,班级编号,成绩;我们需要查询系统中的所有同学的成绩,和班级的平均成绩。if object转载 2008-06-16 10:49:00 · 1466 阅读 · 0 评论 -
使用Transact-SQL进行数据导入导出方法详解
本文讨论了如何通过Transact-SQL以及系统函数OPENDATASOURCE和OPENROWSET在同构和异构数据库之间进行数据的导入导出,并给出了详细的例子以供参考。1. 在SQL Server数据库之间进行数据导入导出(1).使用SELECT INTO导出数据 在SQL Server中使用最广泛的就是通过SELECT INTO语句导出数据,SELE转载 2008-06-16 10:57:00 · 1298 阅读 · 0 评论 -
SQL Server Security
在SQL Server 2008中的安全分为 Server Principal 和 Database Principal 两级,Server Pricipal 可以通过select * from sys.server_principal 获得,Database Principal可以通过select * from sys.database_principal.1. create原创 2008-12-01 18:30:00 · 735 阅读 · 0 评论 -
最优化设计数据库
数据库设计是数据库性能的路基原创 2010-09-20 13:28:00 · 770 阅读 · 0 评论