首先检查SQL数据库服务器中是否允许远程链接。其具体操作如下:
为企业提供做网站、成都网站制作、网站优化、全网营销推广、竞价托管、品牌运营等营销获客服务。创新互联拥有网络营销运营团队,以丰富的互联网营销经验助力企业精准获客,真正落地解决中小企业营销获客难题,做到“让获客更简单”。自创立至今,成功用技术实力解决了企业“网站建设、网络品牌塑造、网络营销”三大难题,同时降低了营销成本,提高了有效客户转化率,获得了众多企业客户的高度认可!
(1)右击SQL Server 2008选项,选择SQL Server 2008 Management Studio:
(2)打开“服务器属性(Server Properties)” (右键连接名称-属性)
选择“允许用户对该服务器进行远程链接”选项后,检查是否问题已经排除。如果远程链接已经成功,该过程已经完成。若用户发现“提醒错误对话框”依然弹出,那么还需要做的是:
(二)检查SQL网络链接配置。其具体操作如下:
打开“SQL服务器配置管理”选项打开“该节点的SQL服务器网络配置选项”选择“微软SQL 服务器网络协议”选项(或用户的SQL服务器中为SQL服务器配置网络协议的选项,不同版本的SQL名称可能不同):
设置完成后重启sql服务(net stop mssqlserver net start mssqlserver)
确定“微软SQL服务器网络选项协议”中的TCP/IP协议对服务器来说是有效的。再次检查是否已经可以执行远程链接。若“错误提醒对话框”依然弹出,需要进一步检查SQL服务器防火墙选项。
(三)检查SQL服务器防火墙设置 (快捷步骤-直接关闭防火墙(不安全))
如
果在进行完上两步操作后,用户端计算机仍然无法远程链接到SQL服务器,用户需要做的是对SQL服务器防火墙进行重新配置。在进行这一步操作时,首先找到
SQL服务器上那个端口支持TCP/IP协议。用户可以在SQL服务器防火墙已经处于运行状态下,点击“TCP/IP协议”选择“属性”:
从
上图中可以看出,这台SQL服务器上支持TCP/IP协议的是1433端口。下一步要做的是在防火墙的配置中允许1433端口支持TCP/IP协议
即可。如果服务器上运行的是Windows
7操作系统,其配置步骤为(其他微软操作系统的做法类似),打开“控制面板”选择“Windows防火墙”选项:
选择“高级设置”后,在右边菜单栏中找出“具有高级安全选项的Windows防火墙”并将其打开。打开后会发现在左边菜单栏中有“入站规则(Inboud Rules)”选项。将该选项打开,并在右边菜单栏中选择“新建规则(New Rule)”选项:
打开“新建规则”选项后,利用“新内置绑定规则向导”为1433端口配置“内部绑定协议”配置为适用于TCP/IP协议即可。(前提是,需要完成该步骤以前所述的所有步骤),根据下面的几幅图为1433端口配置适用于1433端口即可:
以上全部都没问题了之后打开SQL2008,输入远程服务器名或IP、登录名及密码就可以连接到远程服务器上了。
一。数据库的连接方法:
%
dim conn,mdbfile
mdbfile=server.mappath("数据库名称.mdb")
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};uid=admin;pwd=数据库密码;dbq="mdbfile
%
2. ASP与SQL数据库连接:
%
dim conn
set conn=server.createobject("ADODB.connection")
con.open "PROVIDER=SQLOLEDB;DATA SOURCE=SQL服务器名称或IP地址;UID=sa;PWD=数据库密码;DATABASE=数据库名称
%
1.Access数据库的DSN-less连接方法:
set adocon=Server.Createobject("adodb.connection")
adoconn.Open"Driver={Microsoft Access Driver(*.mdb)};DBQ=" _
Server.MapPath("数据库所在路径")
2.Access OLE DB连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"Provider=Microsoft.Jet.OLEDB.4.0;" _
"Data Source=" Server.MapPath("数据库所在路径")
3.SQL server连接方法:
set adocon=server.createobject("adodb.recordset")
adocon.Open"Driver={SQL Server};Server=(Local);UID=***;PWD=***;" _
"database=数据库名;"
4.SQL server OLE DB连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"provider=SQLOLEDB.1;Data Source=RITANT4;" _
"user ID=***;Password=***;" _
"inital Catalog=数据库名"
5.Oracle 连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"Driver={microsoft odbc for oracle};server=oraclesever.world;uid=admin;pwd=pass;"
6.Oracle OLE DB 连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"Provider=OraOLEDB.Oracle;data source=dbname;user id=admin;password=pass;"
7.dBase 连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"Driver={microsoft dbase driver(*.dbf)};driverid=277;dbq=------------;"
8.mySQL 连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"Driver={mysql};database=yourdatabase;uid=username;pwd=yourpassword;option=16386;"
9.Visual Foxpro 连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"Driver={microsoft Visual Foxpro driver};sourcetype=DBC;sourceDB=*.dbc;Exclusive=No;"
10.MS text 连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"Driver={microsoft text driver(*.txt; *.csv)};dbq=-----;"_
"extensions=asc,csv,tab,txt;Persist SecurityInfo=false;"
11.MS text OLE DB 连接方法:
set adocon=Server.Createobject("adodb.connection")
adocon.open"Provider=microsof.jet.oledb.4.0;data source=your_path;"_
"Extended Properties'text;FMT=Delimited'"
--创建链接服务器
exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '
exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用户名 ', '密码 '
--查询示例
select * from ITSV.数据库名.dbo.表名
--导入示例
select * into 表 from ITSV.数据库名.dbo.表名
--以后不再使用时删除链接服务器
exec sp_dropserver 'ITSV ', 'droplogins '
打开SQL SERVER2005的管理工具:SSMS
1.展开服务器对象--链接服务器--右击"新建链接服务器"
注意:必须以数据库管理员身份登录(通常也就是sa帐号)后,才可以创建"链接服务器"
2.输入链接服务器的IP
3.设置链接服务器的安全性(登录远程服务器的相关账号等信息)
4.确定,即完成了链接服务器的创建
5.测试
用本地SQL帐号本地登录SqlServer,新建一个查询,输入
Select * From [链接服务器名].[远程数据库名].[所有者].[表名]
比如
Select * from [127.0.0.1].[otherServer].[dbo].[t_class]
sqlserver远程连接
需要别人远程你的数据库,首先需要的是在一个局域网内,或者连接的是同一个路由器,接下来就是具体步骤:
(一)首先是要检查SQLServer数据库服务器中是否允许远程链接。其具体操作为:
(1)打开数据库,用本地帐户登录,右击第一个选项,选择属性:
(2)在打开的属性窗口,在其右边点击“连接”,然后再左侧勾上“允许远程连接到此服务器”:
(二)为微软SQL服务器(MSSQLServer)配置相应协议。
(1)依次选择:开始-〉所有程序-〉Microsoft SQL Server 2008-〉配置工具-〉SQL Server配置管理器,如下图所示:
(2)打开SQL Server配置管理器后,选择SQL Server网络配置下面的MSSQLSERVER,然后看右边里面的TCP/IP是否为“已启用”,如下图所示:
(三)检查SQL服务器防火墙设置 (快捷步骤-直接关闭防火墙(不安全))
(1)在进行完上两步操作后,用户需要做的是对SQL服务器防火墙进行重新配置。在进行这一步操作时,首先找到SQL服务器上那个端口支持TCP/IP协议。用户可以在SQL服务器防火墙已经处于运行状态下,右击“TCP/IP协议”选择“属性”:
从上图中我们可以看出,这台SQL服务器上支持TCP/IP协议的是1433端口。下一步要做的是在防火墙的配置中允许1433端口支持TCP/IP协议即可。如果服务器上运行的是Windows 7操作系统,其配置步骤为(其他微软操作系统的做法类似),打开“控制面板”选择“Windows防火墙”选项,然后点击高级选项,如下图所示:
(2)选择“高级设置”后,在右边菜单栏中找出“具有高级安全选项的Windows防火墙”并将其打开。打开后会发现在左边菜单栏中有“入站规则(Inboud Rules)”选项。将该选项打开,并在右边菜单栏中选择“新建规则(New Rule)”选项:
(3)打开“新建规则”选项后,利用“新内置绑定规则向导”为1433端口配置“内部绑定协议”配置为适用于TCP/IP协议即可。(前提是,需要完成该步骤以前所述的所有步骤),根据下面的几幅图为1433端口配置适用于1433端口即可:
最后点击“完成”即可。测试方法:在局域网内找一台电脑,打开SQLServer数据库,然后输入你的Ip和密码,如果能连接上,就说明已经配置好了,如下图所示:
步骤/方法
1
在我们c#与sql链接的过程中,一般会有两种方法,而每种方法均赋予了不同的权限;如下:
1、集成的Windows身份验证语法范例:
String connectionString = "server=localhost;database=Northwind;integrated security=SSPI";
代码说明:其中server表示运行Sql Server的计算机名,由于在本书中,ASP.NET程序和数据库系统是位于同一台计算机的,所以我们可以用localhost取代当前的计算机名,当然localhost也可以用“.”来代替。database表示所使用的数据库名,这里设置为Sql Server自带的一个示例数据库--Northwind。由于我们希望采用集成的Windows验证方式,所以设置 integrated security为SSPI即可。
注意:在使用集成的Windows验证方式时,并不需要我们输入用户名和口令,而是把登录Windows时输入的用户名和口令传递到Sql Server。然后Sql Server检查用户清单,检查其是否具有访问数据库的权限。而且数据库连接字符串是不区分大小写的。
2
2、采用Sql Server身份验证的语法范例:
string connectionString = "server=localhost;database=Northwind;uid=sa;pwd=sa";
代码说明:在上述语法范例的程序代码中,采用了使用已知的用户名和密码验证进行数据库的登录。localhost可以用“.”来代替,uid为指定的数据库用户名,pwd为指定的用户口令。为了安全起见,一般不要在代码中包括用户名和口令,你可以采用前面的集成的Windows验证方式或者对Web.Config文件中的连接字符串加密的方式提高程序的安全性。
END
注意事项
在我们运用以上两种方法中的任何一种的时候,我们一定要注意以下几点:
1、细心:我们在编写链接字符串的时候,一定要认真加仔细,因为c#是区分字母的大小写的,同时在某种情况下,还对空格敏感;在笔者还是菜鸟的时候,就因为一个空格的问题,使本人纠缠了2天而郁闷万分,最后一查,竟然是一个空格惹的祸;
2、权限:这里,就是要大家注意的是,我们链接数据库的权限一定要获取正确,如果权限不正确,那再认真和仔细,也是枉然;
3、网速:在我们开发的c#程序中,也偶尔会出现因为网速巨慢引起的sql链接故障的问题,那么我们在检查以上2种都无误的情况下,去测试一下你的网速是否出现异常,由此来判断一下你的数据库链接是否真正有误;这,是否是c#中的一个小bug呢?欢迎大家讨论!
其实啊,这本来是一个很easy的问题,就像我的引言中所说那样,不是很复杂,只要我们方法正确,足够仔细,就不会出现什么问题;