易截截图软件、单文件、免安装、纯绿色、仅160KB

ISA防火墙客户端和SQLSERVER客户端的问题

有外来程序安装基于.NET FRAMEWORK 3.5的应用程序在内网的PC上,需要通过ISA防火墙客户端经过服务器上的ISA2006 SP1访问外网的SQLSERVER2005数据库。
        按照以往经验,需要配置一条SQLSERVER2005服务器所在的IP地址的出站规则,并且并不需要设置一条基于域名的规则。
        该应用程序通过域名访问目标数据库一切正常。
        但我在同一台机器上用SQLSERVER 2005 MANAGEMENT STUDIO同样用域名访问目标数据库则失败了:超时时间已到。在操作完成之前超时时间已过或服务器未响应。于是我用IP地址访问目标数据库,则成功了。
        查看ISA服务器的日志,多了几条记录,典型的一条就是0x80074e21 FWX_E_ABORTIVE_SHUTDOWN。
        为了找到原因我开始用VS2008自己写程序测试:
        sqlConn = new SqlConnection(@"Data Source=IP地址;Initial Catalog=***;User ID=***;Password=***");
        成功!
        sqlConn = new SqlConnection(@"Data Source=域名;Initial Catalog=***;User ID=***;Password=***");
         还是失败!
        我非常困惑,为什么外来的程序用域名访问能够成功呢。
        于是打开控制面板中的数据源 (ODBC),建立一个SQLSERVER的连接,这个时候发觉用IP地址也不能成功,奇怪中看了下客户端配置去掉了动态决定端口,指定的端口为1433,于是用IP连接,成功了。接着用域名测试也成功了。联想到在整个测试过成中询问过其他人用PB做的程序是能成功访问远程数据库的,于是恍然大悟,成功与不成功原因在与SQLSERVER的驱动上面,成功的都是使用SQLOLEDB的驱动的。
   
      于是在C#中写到:
      OleDbConnection cnn = null;
   string cnnstr="Provider=SQLOLEDB.1;Initial Catalog=***;Data Source=域名,1433;User ID=***; Password=***";
       cnn = new


相关文档:

一只查询SQLServer 2005所有信息的语句

select
    table_name=
    (
    case when t_c.column_id=1
        then t_o.name
        else ''
    end
    ),
    column_id=t_ ......

SQLServer和Oracle常用函数对比


数学函数
在oracle 中distinct关键字可以显示相同记录只显示一条
  1.绝对值
  S:select abs(-1) value
  O:select abs(-1) value from dual
  2.取整(大)
  S:select ceiling(-1.001) value
  O:select ceil(-1.001) value from dual
  3.取整(小)
  S:select floor(-1.001) value ......

sqlserver:openrowset / oracle:table/view@dblink名

只是sqlserver 提供的远程数据访问函数;  在本地sqlserver 中取外部数据源数据时候可用;
对连接本地 oracle 操作远程 oracle 不能使用; 测试: pl/sql 中使用:
select * from openrowset(................); 无效!!!!!!!!!!!!!!
在oracle 中需要访问远程数据,需要建立一连接远程oracle 的 dblink ;
再用如下方 ......

关于oracle导入sqlserver存在的唯一索引问题

我在把oracle数据导入sqlserver中时,发现在oracle中字段定义为唯一索引时,不同记录的此字段如果为空不被认为是重复的,但在sqlserver中如果此字段为唯一索引字段,不允许有2个以上的空值。郁闷。所以只好将sqlserver中的唯一索引字段手工修改为几个非空的值,但这样程序肯定要进行修改了。需要在程序中为此字段设置不重复 ......

SQLServer 导入导出

·         本文讨论了如何通过Transact-SQL以及系统函数OPENDATASOURCE和OPENROWSET在同构和异构数据库之间进行数据的导入导出,并给出了详细的例子以供参考。
 
1. 在SQL Server数据库之间进行数据导入导出
(1).使用SELECT INTO导出数据 
    ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号