本地机器tnsnamesora
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = fuqiang)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
SERVICEORCL=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 服务器IP)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
服务器tnsnamesora
SERVICEORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 服务器名称)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
VS中连接代码:
C# code
OracleConnection oracleConnection = new OracleConnection("Data Source=;User ID=system;Password=manager;Unicode=True");
这样写连接字符串,可以连接到本地orcl这个实例,没有问题。但是想连接到服务器上的orcl实例,该如何写连接字符串,其它地方都一样吧,只是Data Source要怎么写?
------回答---------
------其他回答(90分)---------
本地用Net Configuration Assistant 建个net服务,连接倒服务器,net服务名为ORCL_SVR,确保连接正确,然后Data Source=ORCL_SVR即可。
------其他回答(5分)---------
把你QQ告诉我,我连过去给你看一下。
------其他回答(5分)---------
引用 9 楼 sorry0481 的回复:
又搞了一会,发现问题了,可是不知道怎么解决,服务器使用Net Configuration Assistant 测试连接自己,没有问题。客户端全用Net Configuration Assistant 测试连接服务器也没有问题。可见已经配置好了,但是在运行Microsoft Visual Studio 2008代码时,连接字符串报错:“ORA-12154: TNS: 无法解析指定的连接标识符”,看了下断点,错误是这个:
ServerVersion “((SystemDataCommonDbConnection)(oracleConnection))ServerVersion”引发了“SystemInvalidOperationException”类型的异常 string {SystemInvalidOperationException}
分析了下,应该是版本的问题,可是我只安了一个11G,没有安其它版本,结果想到,是不是安了Oracle Developer Tools for Visual Studio NET这个引起的??哪位仁兄碰到过类似问题??该怎么解决???
你确定DB连上了?tnsnames 跟你的config档设定是否一致?我也遇到过,血的教训啊。。。
------回答---------
------其他回答(90分)---------
本地用Net Configuration Assistant 建个net服务,连接倒服务器,net服务名为ORCL_SVR,确保连接正确,然后Data Source=ORCL_SVR即可。
------其他回答(5分)---------
把你QQ告诉我,我连过去给你看一下。
------其他回答(5分)---------
引用 9 楼 sorry0481 的回复:
又搞了一会,发现问题了,可是不知道怎么解决,服务器使用Net Configuration Assistant 测试连接自己,没有问题。客户端全用Net Configuration Assistant 测试连接服务器也没有问题。可见已经配置好了,但是在运行Microsoft Visual Studio 2008代码时,连接字符串报错:“ORA-12154: TNS: 无法解析指定的连接标识符”,看了下断点,错误是这个:
ServerVersion “((SystemDataCommonDbConnection)(oracleConnection))ServerVersion”引发了“SystemInvalidOperationException”类型的异常 string {SystemInvalidOperationException}
分析了下,应该是版本的问题,可是我只安了一个11G,没有安其它版本,结果想到,是不是安了Oracle Developer Tools for Visual Studio NET这个引起的??哪位仁兄碰到过类似问题??该怎么解决???
你确定DB连上了?tnsnames 跟你的config档设定是否一致?我也遇到过,血的教训啊
1启动数据库
2确保数据库能正常连接
3启动visual
studio
4工具栏->工具->连接到数据库
5填写数据库的相关信息,测试ok后,按确定就可以了
一、在webconfig里面配置,后连接数据库
(1)webconfig文件:加在<connectionStrings>和</connectionStrings> 之间
三种配置方式:
1windows身份验证,连接sql server数据库: <add name="字符串名称" connectionString="Data Source=localhost;database=数据库名称;Integrated Security=True;User Instance=False;" />
2windows身份验证,连接vs数据库:<add name="字符串名称" connectionString="Data Source=\SQLEXPRESS;AttachDbFilename=|DataDirectory|\数据库名称mdf;Integrated Security=True;User Instance=True" providerName="SystemDataSqlClient"/>
3sql server身份验证,连接sql server数据库:<add name="字符串名称" connectionString="server=\SQLEXPRESS;database=数据库名称;uid=sa;pwd=liteng"/>
取字连接符串方式:
1、protected static string connectionString = ConfigurationManagerConnectionStrings["字符串名称"]ConnectionString;
2、string connectionString = SystemWebConfigurationWebConfigurationManagerConnectionStrings["字符串名称"]ConnectionString;
(2)webconfig文件:加在<appsettings>和</appsettings> 之间
配置方式:
<appSettings>
<add key="conn" value="server=服务器名;database=数据库名;uid=用户名;password=密码;"/>
</appSettings>
取字连接符串方式:
string connectionString =configurationsettingsappsettings["字符串名称"];
appSettings 和 connectionStrings 的区别:
(1) appSettings 是在 2003 中常用的,connectionStrings 是在 2005 中常用的;
(2) 使用 connectionStrings 的好处:
第一,可将连接字符串加密,使用MS的一个加密工具即可;
第二,可直接绑定数据源控件,而不必写代码读出来再赋值给控件;
第三,可方便的更换数据库平台,如换为 Oracle 数据库,只需要修改 providerName。
二、直接在网页里引用,连接数据库:
1、string connString = "server=localhost;database=数据库名;user id=用户名;pwd=密码;";
或者上行代码为:string connstring = "Data source=localhost;database=数据库名;user id=用户名;pwd=密码;";
2、SqlConnection con = new SqlConnection(connstring);
3、conOpen();
一般呢这种方法用于Entity FrameWork 数据库中表与对象映射。
第二个解决方案:用SQL2008创建好数据库以后,在VS2010中用连接字符串连接接,即代码连接:用连接字符串,自己网上找吧。这种较为常见,连接字符串,初学者可以放到逻辑代码文件中,公司用的话就是放到config文件中了。
第三种解决方案:在VS2010的视图即view菜单中选择Server,在Data Connection上右击,选择Create New SQL database这个时候要保证自己机器上得SQL 服务已经开启。然后选择服务器名。给数据库名……。这种方式呢,最方便,在一个VS2010集成开发环境就可以创建数据库而且简单易行。不需要再切换到SQL2008。体现了VS2010这个集成工具的强大
1 使用 Windows 认证模式:// 连接到默认数据库, 如果指定连接到其他数据库, 可以附加 Initial Catalog=yourDBName 段2 使用 SQL Server Authencation 模式:SqlConnection hCon = new SqlConnection("Server=(local)\\SQLExpress; User ID=yourLoginID; Password=yourPassword;");// yourLoginID 为登录 ID, 通常使用 sa 帐户登录// yourPassword 为登录 ID 对应的密码------值得注意的是, 对于 Express 版本 SQL Server, 它的实例名后面带 SQLExpress, 而且不能改, 当然也不能增加新的实例 连接时要附加这个标识 例如:---------对于企业版 的 SQL Server 2005, 则无此要求使用SystemDataSqlSqlClientSqlConnection 连接 SQL Server, 如果是本机,则最好采用 Windows 认证模式来连接依稀记得 SQL Server 2005 Express 版本, 默认 sa 是禁止网络登录的 (Deny login), 如果使用 sa 登录, 要先开启 sa 允许登录状态mxsj_lxm 的提议是个不错的选择 将连接串复制到代码中
以上就是关于vs中怎样连接服务器上的oracle数据库全部的内容,包括:vs中怎样连接服务器上的oracle数据库、VS2008如何连接SQL数据库越详细越好、vs如何新建/连接sqlserver数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)