Linux中国  设为主页
 收藏本站
 
当前位置: > 首页 ->数据库应用 ->SQL Server ->SQL Server Express Edition Server
  相关分类: 
Access
DB2
Mysql
Oracle
PostgreSQL
SQL Server
Sybase
其他数据库
  站内搜索: 
热门文章排行
热门文章排行 SQLServer2005的一般部署步骤 (04-23)
SQL server 2005安装问题汇总(06-03)
[SQL Server]2005 Express Edition概(04-23)
用MS SQL Reporting Services生成报(04-17)
50种方法巧妙优化你的SQL Server数据(04-17)
精采文章排行
精采文章排行 教你如何在SQL Server计算机列和平均(06-29)
SQL Server数据库搭建农村信息化的方(06-29)
让VB实现SQL Server 2000存储过程调(06-29)
SQL Server数据库搭建农村信息化的方(06-29)
SQL Server 2005分析服务 统一整合视(06-29)
  ·如何在SQL Server中构建并利用UDF表格 ·使用T-SQL操作面试SQL Server开发人员 ·课程讲解 如何使用SQL Server校勘功能 ·SQL Server从安装到建库为新手寻找捷径 ·如何使用SQL Server数据库嵌套子查询 ·问题解决:SQL Server 2005无法重新安装 ·精细分析 SQL server服务器的内存配置 ·如何获取SQL Server数据库元数据的方法 ·用实例分析如何整理SQL Server输入数据

SQL Server Express Edition Server

作者:Webmaster   来源:Microsoft    点击:   日期:2007-04-23 [收藏] [投稿]

  IE是否经常中毒?推荐您

连接到 SQL Server Express(获得对 SQL Server Express 的访问)

Microsoft 和我希望您使用托管代码来打破对 COM 和 OLE DB 提供程序的依赖性 — 即,SQL Server 提供程序。SqlClient .NET 数据提供程序仍然是最好的选择。如果必须使用 MDAC 和 OLE DB 从基于 COM 的应用程序连接到 SQL Server Express,您可以这么做,但是您无法通过共享的内存提供程序进行连接,并且您将需要确保启动了 SQL Browser 服务。

由于默认安全性设置是集成安全性,您将需要在连接字符串中使用 Integrated Security=SSPI,除非更改为混合模式安全性。您仍然需要在连接字符串中指定初始目录或 Database,以指向 SQL 所针对的特定数据库。当使用 SQL 分析器来监视代码所执行的操作时,我还建议您使用 Application Name 连接字符串参数来唯一地标识您的操作。

使用 AttachDBFilename 进行连接

SQL Server 团队所推荐的新方法是将关键字 AttachDBFilename 添加到连接字符串。如果一直用于 Web 应用程序,对于典型 SQL Server 客户端/服务器前端应用程序而言,这是不常用而且是极少使用的方法。对于说明 SQL Sever 实例的任意连接字符串,您必须按名称(或 IP 地址)指向服务器并提供一个实例名。此外,当使用 AttachDBFilename 关键字指向连接字符串中的文件名时,ADO.NET(或 ADO)会通知目标 SQL Server 实例,您希望将引用的文件“附加”到服务器 — 这样,在打开连接的过程中会将该数据库注册在 SQL Server Master 数据库中。

在附加数据库后,当您引用数据库时,从此时起,该服务器访问引用的文件 (.MDF) 及其附带日志文件 (.LDF)。因为此处有一个 catch 语句,请务必小心。您必须 在连接字符串中指定 Database 关键字。如果不指定,该服务器则无法确定这个新附加的数据库。代码列表 1 显示了被配置为附加并打开一个 .MDF 文件的 ADO.NET Sqlclient.SqlConnection 对象的示例。

代码列表 1. 使用 AttachDBFilename 关键字连接到 SQL Server .MDF 文件。

Try
            cn = New SqlConnection("Data Source=.\SQLExpress;" _
            & "Integrated Security=True;Database=Biblio;" _
            & "Timeout=60;" _
            & "Application Name=SQLExpress Test;" _
& "AttachDBFilename=" & strFn)
            da = New SqlDataAdapter("SELECT AU_ID, Author, Year_Born from authors", cn)
            ds = New DataSet
            da.Fill(ds)
            DataGridView1.DataSource = ds.Tables(0)
Catch ex As Exception
            MsgBox(ex.ToString)
End Try

提示 将新数据库附加到 Master 的过程比简单地打开它要花费更多的时间。确保设置连接字符串 Timeout 关键字,以考虑该增加的时间。

管理附加的 .MDF 数据库文件

尽管打开连接的过程会附加一个数据库,但是当应用程序关闭该连接时,数据库并没有分离。一旦附加,它会永久性地安装在 SQL Server 实例中。这意味着在应用程序结束后,数据库本身对任何应用程序都是可视的,且带有足够的权限。它还表示您需要负责在带有其他应用程序文件的相同目录中维护数据库文件。由于在 SQL Server 运行时,文件受到 Windows 的保护,所以在没有首先从数据库分离时,它不应该被“更新的”版本所覆盖。当然,分离并不困难。您可以从 SQLCMD 中使用以下命令,或使用 SQL Server 2005 GUI 管理工具。另一种方法是使用当使用该数据库的所有应用程序结束时自动关闭数据库文件的 AutoClose 选项。

EXEC sp_detach_db 'MyDb' 
GO

请记住要将数据库文件保存在本地硬盘上,而不是保存在共享的网络服务器上。强制 SQL Server 执行通过线缆的物理 I/O(即使它支持该操作)是非常危险的,并且它确实会降低您的性能。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<

上一页 1 2 3 4 5 6 78 9 下一页

上一篇:SQL Server的Collate语句需注意   下一篇:教你几个日期比较的SQL SERVER语句
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论

   相关文章:
·精细讲述SQL Server数据库备份多种方法

   文章评论:(1条)
  
 请留名: 匿名评论   点击查看所有评论 论坛讨论
 

 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。