SQL Server数据库连接 Web.config怎样安排

我们这里假设Access数据库名字为 test.mdb,这里我们给出几种在ASP.NET下防止Access数据库被下载的方法,本文只讨论对MS SQL Server的连接字符串情况,因此是使用ASP.NET开发时首选的数据库是MS,添加新的启用了调试的Web.config文件,在图5-6中

金沙澳门官网7817网址 6

怎么着防止Access数据库下载是三个很老的话题了,网络的座谈也正如多。这里大家提交两种在ASP.NET下防备Access数据库被下载的法子。

在ASP.NET开垦的网址根目录,有一个名叫web.config的文件,从名称想到所满含的意义,那是为全体网站开展配置的文书,其格式为XML格式。
此地关键切磋文件中的<connectionStrings>节。
<connectionStrings>节是对连接到数据库的字符串举办配置,由于MS SQL
Server与ASP.NET同属于微软的成品,因而是利用ASP.NET开拓时首荐的数据库是MS
SQL Server,本文只谈谈对MS SQL Server的连日字符串境况。
先是种意况,本地开辟时,使用本地数据库,如下边包车型大巴代码

此作品首要介绍的是Web.config准确配置SQL
Server数据库连接的其实擦步骤,在图5-6中,选用“增多新的启用了调养的Web.config文件”单选按钮,在图5-6中,单击“鲜明”开关后,在“施工方案能源管理器”对话框中可以观看。

笔者们这里即使Access数据库名称叫 test.mdb。

复制代码 代码如下:

在Web应用程序的根目录中成立了三个“Web.config”文件,如图所示。

1、把数据库放在WEB目录外

如您的网址目录是D:\www,你能够把数据库放到D:\data
那一个文件夹里,然后修改网址前后相继中的数据库连接字串地址部分为:”D:\data\test.mdb”
,那样数据库能够健康调用,可是力不胜任下载的,因为它不在网址目录里。

借使在web.config中配置数据库连接字符串。举个例子:

    <connectionStrings>        <add name="Access" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;data source=d:\data\test.mdb" providerName="System.Data.OleDb" />    </connectionStrings>

<connectionStrings>
    <add name=”myConn”
connectionString =”Data Source=(LocalDB)
\v11.0;AttachDbFilename=|DataDirectory| \Movies.mdf;Integrated
Security=True” providerName =”System.Data.SqlClient” />
</connectionStrings>

金沙澳门官网7817网址 1

2、把数据库放在App_Data系统文件夹下

从.Net2.0开始有App_Data目录来非常寄放数据文件,它可以用来放Access,SQL
Server
Express、XML等数据文件。数据库文件放到App_Data文件夹的收益便是能够幸免被下载。而对此连日来字符串数据库的公文地方能够运用DataDirectory关键来代表它的情理路线,进而在获取连接字符串的时候不再必要选拔Server.MapPath()调换。

即使在web.config中铺排数据库连接字符串。比如:

 <connectionStrings> <add name="Access" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;data source=|DataDirectory|test.mdb" providerName="System.Data.OleDb" /> </connectionStrings>

|DataDirectory|就是意味着的app_data文件夹。

讨论:
那是利用PC进行地面开荒最常用的数据库连接字符串使用办法。个中,
name属性指的是接连字符串名称,网址中需求采纳数据库时,都亟待引用这一个连续字符串名称;本例中为myConn;
Data
Source属性是数据库服务器,(LocalDB)\V11.0验证使用本地数据库服务器,版本号为11,即SQL
Server 二零一二;
金沙澳门官网7817网址,AttachDbFilename属性是钦命具体多少为名称及岗位,|DataDirectory|
对应ASP.NET网址中的系统目录App_Data,本属性值表达连接到本目录中的名字为Movies.mdf数据库,当中,mdf文件名表明该数据库必要SQL
Server服务器的劳动,但它本身是一个单独的数据库文件,可以开展复制粘贴而无需在SQL
Server管理系统(如SSMS)举行数据库分离专门的学问;
Integrated Security=True”
表达是融为一体验证,是Windows验证的方式,只要有其一本性及属性值,连接字符串中就无需客商名及密码;
providerName =”System.Data.SqlClient”为数量提供程序
这种情况是本地开拓最常用的景况:能够直接行使ASP.NET成立数据库(扩大名即为.mdf),也能够运用ASP.NET网站配置生成ASPNETDB.MDF数据库,当数据库创制实现后,在ASP.NET分界面中开创连接字符串,只需求提供连接字符串的称呼,连接字符串的任何性质及属性值能够自行在web.config文件中变化。

图1.1 “未启用调节和测验”对话框

3、重命名数据库文件

将你的 Access 重命名 *.asax:因为 ASP.NET
的拍卖机制中,默许景况下,对那样的伏乞是间接拒绝的。依据这几个思路,仍是能够把
Access 重命名称为 *.config,*.vb, *.cs 等等。

其次种情景,本地开拓时,使用上面包车型大巴总是字符串:

金沙澳门官网7817网址 2

4、配置IIS,增多.mdb文件类型映射

增添.mdb的强大映射这些艺术正是透过修改IIS设置来兑现。只需2个步骤。

  1. 布署IIS,将.mdb文件类型映射到ASP.NET ISAPI。

以windows 2000为例,点击“开始”-》运营-》输入“inetmgr”
回车,张开“Internet 服务管理器”。在某一个网站上单击鼠标右键-》点击“属性”
弹出此站点的习性对话框。点击“主目录”选项卡,点击“配置”按键,则会显得“应用程序配置”对话框。点击“增加”扩张一个映射,那时会议及展览示二个对话框,要你输入可执行文件:“C:\WINDOWS
\Microsoft.NET \Framework \v2.0.50727
\aspnet_isapi.dll”;输入扩大名:“.mdb”。如下图所示

金沙澳门官网7817网址 3

  1. 布局asp.net的web.config文件,将.mdb文件类型映射到HttpForbiddenHandler
    HTTP handler。

使asp.net应用程序.mdb文件类型映射到HttpForbiddenHandler HTTP
句柄。为了达成那上步,必需将上边包车型客车配备加到Web.config文件中

   <httpHandlers>            <add verb="*" path="*.mdb" type="System.Web.HttpForbiddenHandler" />   </httpHandlers>

复制代码 代码如下:

  图1.2生成“Web.config”文件

5、增加ACCESS防下载字段

该方法的规律是:将数据库的恢宏名形成.aspx格式,从远程访谈那个文件的时候,IIS服务器就能够把它当成aspx程序来举行,而笔者辈从前在ACCESS数据库中插入了“<%”符号,而asp.net程序务必在“<%%>”标记中工夫实施,所以就能够现出
“缺少脚本关闭标志”
的500破绽百出,旁人就不能下载ACCESS数据库了。倘使只是简短的在数据库的文书可能备注字段参加“<%”是没用的,因为ACCESS会对内部的剧情开展拍卖,在数据Curry他会以
<% 的款式存在,无效!正确的办法是将 <%
存入OLE对象字段里。方法如下:

1、先创设三个表,在SQL命令窗口内输入如下内容:“create table
[notdown]([notdown] oleobject)”

然后点击工具栏中的“!”,那样,就能在如今数据库内成立一个“notdown”表,在这之中的字段名为“notdown”,字段类型为“OLE对象”。
如图1

金沙澳门官网7817网址 4

2、将SQL查询窗口中的内容改造为如下命令:“insert into [notdown] values

这一句的意趣是向“notdown”表的“notdown”字段中插入“0x3C25”数据(“0x3C25”为字符“<%”的16进制)。如图2

金沙澳门官网7817网址 5

施行完结后,再度翻开数据库中的“表”,就能够开采里面已多了叁个“notdown”表,展开后字段显示的是“长二进制数据”
如图3

金沙澳门官网7817网址 6

admin一千0.com这里一度做好的防下载数据表notdown,你可以间接下载粘贴到自个儿数据库中应用。金沙澳门官网7817网址 7notdown数据表

唤醒1:无论是ASP网址中依然ASP.NET网址,对于一贯把Access数据库后缀直接改为.asp和.aspx,用FlashGet等下载工具都照下不误,不能够起到防下载功能。
提示2:第5种艺术日常用在ASP+ACCESS网址中。

<connectionStrings>
    <add name=”myConn” connectionString=”Data
Source=|DataDirectory|MvcMusicStore.sdf”
providerName=”System.Data.SqlServerCe.4.0″/>
</connectionStrings>

“Web.config”文件中提供的装置能够利用于全体应用程序,包含应用程序的子目录。在铺排文件“Web.config”中,全数的布局音信都位于<configuration>和</configuration>XML根节点之间。

证实:这里的connectionString属性比第一种状态轻易,注意这里的数据库扩张名
.sdf,那是MS SQL Compact版本的数据库,它无需张开SQL
Server的劳务就可以使用,精致玲珑,便于使用,但帮助性不及.mdf(这一个是MS SQL
Server标准版文件格式)。因而,在例行的PC机进行支付时,提出使用.mdf文件,假诺在机器上从不MS
SQL Server服务运作时,.sdf是一个不易的挑选。

布局SQL Server数据库连接

其二种情景,本地开辟时,使用下边代码:

在“Web.config”文件中能够在<connectionStrings></connectionStrings>节点中配置SQL
Server数据库连接字符串,配置进程中应用的质量如表所示。