SQL Server Express 2005(以下简称 SQLExpress) 是由微软公司开发的 SQL Server 2005(以下简称 SQL2005)的缩减版,这个版本是免费的,它继承了 SQL Server 2005 的多数功能与特性,如:安全性设置、自定义函数和过程、Transact-SQL、SQL、CLR 等,还免费提供了和它配套的管理软件 SQL Server Management Studio Express 。

SQLExpress 有几个主要的限制:

1. 仅允许本地连接。

2. 数据库文件的最大尺寸为4GB,此限制只对数据文件(后缀名为 mdf),日志文件(后缀名为 ldf)不受此限。

3. 只使用一个CPU来运算,不能充分利用多CPU服务器的性能。

4. 可使用的记忆体量最高只有1GB。

5. 没有 SQL Agent,若要做排程服务必须自己编写。

因此它是 SQL Server 产品系列中面对低端的产品,是面对桌面型应用,或者小型的内部网络应用的。

所谓面对桌面型应用的软件,是指单用户在一台电脑就能完成操作的软件,强调操作指令和数据处理一体化,不考虑多用户共享权限和并发处理问题。与此相对的是客户/服务器(或浏览器/服务器)模式软件,SQL2005 就是 客户/服务器应用模式中的服务器端软件,SQL2005 只能管理附加(Attach)到服务器实例内的数据库文件(mdf文件),而此数据库文件也唯一归属于该SQL2005实例,不能被其它程序调用(当然,也不能被客户程序直接调用),必须由SQL2005实例执行分离(Dettach)该数据库文件后,才能由其它程序调用。

为了适应桌面应用,SQLExpress 比 SQL2005 新增了一项标志性的功能:不需将外置的数据库附加到 SQLExpress 服务器中,就能够直接调用,即在连接数据库语句中增加了 AttachDBFilename 选项。有此功能后,我们用 Microsoft Visual Studio 设计桌面型应用程序时,使用Access数据库或SQLExpress数据库的方式几乎相同,由于SQLExpress数据库的功能更多、扩展性更强,而且是嵌入到 Visual Studio 软件中的默认数据库,相关帮助文档更多,在编程中使用SQLExpress数据库甚至比Access更方便。唯一缺点是包含SQLExpress的软件尺寸较大,与使用Access数据库的软件相比,尺寸约大40兆,但现在的电脑硬盘容量有上百G,几十兆已不是问题。

从桌面数据库的发展过程来看,Foxpro 曾经很受软件开发者喜爱,后来微软公司开发的 VB、C# 等编程语言主推Access做桌面数据库,使得 Foxpro 逐渐衰落。当今 Internet 网络快速普及,纯桌面数据管理软件已经落伍,取而代之的是带有网络功能的客户/服务器(C/S)软件,或浏览器/服务器(B/S)软件,与之对应编程语言就是 Visual Studio 。使用 Visual Studio + SQLExpress 编写的面对桌面的数据管理软件,能够很容易升迁到客户/服务器应用(甚至就是二者兼备),有此推断,SQLExpress 也将逐渐替代 Access 。

目前,网络服务器和虚拟主机服务商提供的数据库产品主要就是 SQL Server 2000-2008 和 Access ,几乎没有 SQLExpress 。这是因为 SQLExpress 只能使用1GB内存,和一个CPU,在多用户共享应用时,随着用户增多,效能下降的很快,这个缺点与Access类似(也可能比Access强点有限)。由于SQLExpress和SQL2005管理的是同一种数据库文件,如果软件编程得当,就应该二者兼备。因此,在有SQL2005的服务器上,就没有必要再应用SQLExpress了。作为特例,在小型企业内部网中,由于SQL2005的购置费较高,也可使用SQLExpress作为客户 端/服务器系统中的服务器端软件。

如果要编写兼容SQLExpress和SQL2005的软件,在编程时只需将连接数据库字符串抽离出来, 用自定义函数来替代(该函数的返回值等于“连接数据库字符串”),就可以了。

我公司编写的“利和信息管理系统”软件,是面对桌面应用、客户/服务器应用,及浏览器/服务器应用于一身的软件,管理本机数据的后台数据库就是SQLExpress ,同时也支持调用Web网站SQL2005数据库。

SQL Server与SQL Server Express的区别的更多相关文章

  1. SQL Server 中 EXEC 与 SP_EXECUTESQL 的区别

    SQL Server 中 EXEC 与 SP_EXECUTESQL 的区别 MSSQL为我们提供了两种动态执行SQL语句的命令,分别是 EXEC 和 SP_EXECUTESQL ,我们先来看一下两种方 ...

  2. SQL Server 表变量和临时表的区别

    SQL Server 表变量和临时表的区别 一.表变量 表变量在SQL Server 2000中首次被引入.表变量的具体定义包括列定义,列名,数据类型和约束.而在表变量中可以使用的约束包括主键约束,唯 ...

  3. SQL Server 2008教程和Microsoft® SQL Server® 2008 R2 SP2 - Express Edition下载

    教程 SQL Server 2008 Tutorialhttp://www.quackit.com/sql_server/sql_server_2008/tutorial/ 数据库下载 Microso ...

  4. Windows Server 2003 Sp2 下无法安装SQL Server 2008 Management Studio Express问题

    Windows Server 2003 Sp2 下无法安装SQL Server 2008 Management Studio Express问题钉子 发表于 2010-5-22 1:42:51问题描述 ...

  5. SQL Server中SCAN 和SEEK的区别

    SQL Server中SCAN 和SEEK的区别 SQL SERVER使用扫描(scan)和查找(seek)这两种算法从数据表和索引中读取数据.这两种算法构成了查询的基础,几乎无处不在.Scan会扫描 ...

  6. [转]SQL SERVER中openrowset与opendatasource的区别

    本文转自:http://blog.sina.com.cn/s/blog_6399df820102vyy8.html SQL SERVER中openrowset与opendatasource的区别: o ...

  7. SQLServer学习-- Microsoft SQL Server 2008 Management Studio Express

    Microsoft SQL Server 2008 Management Studio Express is a free, integrated environment for accessing, ...

  8. SQL SERVER 中的smalldatetime和datetime区别

    原文:SQL SERVER 中的smalldatetime和datetime区别 smalldatetime不能到秒. 不過它占的空間小.(4位) datetime(8位) 而且兩者的時間範圍不一樣. ...

  9. [SDK2.2]SQL Azure (13) Azure的两种关系型数据库服务:SQL Azure与SQL Server VM的不同

    <Windows Azure Platform 系列文章目录> 如果熟悉Windows Azure平台的用户不难发现,对于SQL Server数据库来说,微软提供了两种服务,分别是: -W ...

  10. sql语句优化SQL Server

    MS   SQL   Server查询优化方法查询速度慢的原因很多,常见如下几种 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)          2.I/O吞吐量小,形成了 ...

随机推荐

  1. mongodb查询的语法(大于,小于,大于或等于,小于或等于等等)

    1 ) . 大于,小于,大于或等于,小于或等于 $gt:大于$lt:小于$gte:大于或等于$lte:小于或等于 例子: db.collection.find({ "field" ...

  2. Redis入门篇(安装与启动)

    一.Redis介绍 Redis是NoSql的一种,在弄清楚Redis是个什么玩意之前,先了解下NoSql是什么.1.什么是NoSql NoSql,全名:Not Only Sql,是一种非关系型数据库, ...

  3. 进程同步控制(锁,信号量,事件), 进程通讯(队列和管道,生产者消费者模型) 数据共享(进程池和mutiprocess.Pool模块)

    参考博客 https://www.cnblogs.com/xiao987334176/p/9025072.html#autoid-1-1-0 进程同步(multiprocess.Lock.Semaph ...

  4. 一致性Hash算法的原理与实现(分布式映射算法)

    一致性Hash算法解决的问题: 解决分布式系统中的负载均衡问题 背景问题:有N台服务器提供缓存服务,需要对服务器进行负载均衡,将请求平均发到每台服务器上,每台服务器负载1/N的服务 硬Hash映射:将 ...

  5. System.IO.Pipelines: .NET高性能IO

    System.IO.Pipelines是一个新的库,旨在简化在.NET中执行高性能IO的过程.它是一个依赖.NET Standard的库,适用于所有.NET实现. Pipelines诞生于.NET C ...

  6. 两篇 Spring 总结(一)

    Spring4 概述以及 HelloWorld 概述 Spring 是一个 IOC(DI) 和 AOP 容器框架. 轻量级,Spring 是非侵入的,即使用的时候不需要实现任何接口或继承任何父类 面向 ...

  7. 小程序wxRequest封装

    //const host = 'http://114.215.00.00:8005';// 测试地址 const host = 'https://xx.xxxxxxxx.net'; // 正式地址 c ...

  8. PHP api接口和SQL数据库关联

    数据库表创建 服务器环境配置.连接 .操作.数据库 API接口  原则:

  9. Iar8.1安装包破解

    Iar8.1安装包链接链接:https://pan.baidu.com/s/1F6sxEcatk3_YPq47lvc8Mw 密码:mnlz 破解链接  https://www.cnblogs.com/ ...

  10. 软件工程(FZU2015) 赛季得分榜,第三回合

    SE_FZU目录:1 2 3 4 5 6 7 8 9 10 11 12 13 积分规则 积分制: 作业为10分制,练习为3分制:alpha30分: 团队项目分=团队得分+个人贡献分 个人贡献分: 个人 ...