1:执行另一服务器上的存储过程 execOPENDATASOURCE( 'SQLOLEDB', 'Data Source=远程ip;User ID=sa;Password=密码' ).库名.dbo.存储过程名 2:将资料插入另一服务器上的表中 select*into 本地库名..表名 fromOPENDATASOURCE( 'SQLOLEDB', 'Data Source=远程ip;User ID=sa;Password=密码' ).库名.dbo.表名 insert 本地库名..表名 select*fromOPENDATASOURCE( 'SQLOLEDB', 'Data Source=远程ip;User ID=sa;Password=密码' ).库名.dbo.表名 或使用联结服务器: EXEC sp_addlinkedserver '别名','','MSDASQL',NULL,NULL,'DRIVER={SQL Server};SERVER=远程名;UID=用户;PWD=密码;' exec sp_addlinkedsrvlogin @rmtsrvname='别名',@useself='false',@locallogin='sa',@rmtuser='sa',@rmtpassword='密码' GO (请注意上面的两步要同时运行) 然后你就可以如下: select*from 别名.库名.dbo.表名 insert 库名.dbo.表名 select*from 别名.库名.dbo.表名 select*into 库名.dbo.新表名 from 别名.库名.dbo.表名 go 3: 如果在事务里使用连接服务器要加上 分布式事务: 两边启动dtc set XACT_ABORT on set ANSI_NULL_DFLT_ON on set ANSI_WARNINGS on BEGINDISTRIBUTEDTRANSACTION select*fromOPENDATASOURCE('MSDASQL','DRIVER={SQL Server};SERVER=ip;UID=sa;PWD=密码;').pubs.dbo.jobs committran select stockinid,stockindt from stockin as a where a.stockinid in (select b.stockinid from stockindta as b) CONVERT(varchar,p.end_date,121) 函数 CONVERT( ) 带有两个变量。第一个变量指定了数据类型和长度。第二个变量指定了要进行转换的字段。 SELECTCONVERT(varchar(30),getdate(),101) now <!--StartFragment-->CONVERT的使用方法: 格式: CONVERT(data_type,expression[,style]) 说明: 此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar) 相互转换的时候才用到. 例子: SELECTCONVERT(varchar(30),getdate(),101) now 结果为 now --------------------------------------- 09/15/2001 / style数字在转换时间时的含义如下 ------------------------------------------------------------------------------------------------- Style(2位表示年份) | Style(4位表示年份) | 输入输出格式 ------------------------------------------------------------------------------------------------- -|0or100| mon dd yyyy hh:miAM(或PM) ------------------------------------------------------------------------------------------------- 1|101| mm/dd/yy ------------------------------------------------------------------------------------------------- 2|102| yy-mm-dd ------------------------------------------------------------------------------------------------- 3|103| dd/mm/yy ------------------------------------------------------------------------------------------------- 4|104| dd-mm-yy ------------------------------------------------------------------------------------------------- 5|105| dd-mm-yy ------------------------------------------------------------------------------------------------- 6|106| dd mon yy ------------------------------------------------------------------------------------------------- 7|107| mon dd,yy ------------------------------------------------------------------------------------------------- 8|108| hh:mm:ss ------------------------------------------------------------------------------------------------- -|9or109| mon dd yyyy hh:mi:ss:mmmmAM(或PM) ------------------------------------------------------------------------------------------------- 10|110| mm-dd-yy ------------------------------------------------------------------------------------------------- 11|111| yy/mm/dd ------------------------------------------------------------------------------------------------- 12|112| yymmdd ------------------------------------------------------------------------------------------------- -|13or113| dd mon yyyy hh:mi:ss:mmm(24小时制) ------------------------------------------------------------------------------------------------- 14|114| hh:mi:ss:mmm(24小时制) ------------------------------------------------------------------------------------------------- -|20or120| yyyy-mm-dd hh:mi:ss(24小时制) ------------------------------------------------------------------------------------------------- -|21or121| yyyy-mm-dd hh:mi:ss:mmm(24小时制) ------------------------------------------------------------------------------------------------- --------数学函数 1.绝对值 S:selectabs(-1) value O:selectabs(-1) value from dual 2.取整(大) S:selectceiling(-1.001) value O:select ceil(-1.001) value from dual 3.取整(小) S:selectfloor(-1.001) value O:selectfloor(-1.001) value from dual 4.取整(截取) S:selectcast(-1.002asint) value O:select trunc(-1.002) value from dual 5.四舍五入 S:selectround(1.23456,4) value 1.23460 O:selectround(1.23456,4) value from dual 1.2346 6.e为底的幂 S:selectExp(1) value 2.7182818284590451 O:selectExp(1) value from dual 2.71828182 7.取e为底的对数 S:selectlog(2.7182818284590451) value 1 O:select ln(2.7182818284590451) value from dual; 1 8.取10为底对数 S:selectlog10(10) value 1 O:selectlog(10,10) value from dual; 1 9.取平方 S:selectSQUARE(4) value 16 O:selectpower(4,2) value from dual 16 10.取平方根 S:selectSQRT(4) value 2 O:selectSQRT(4) value from dual 2 11.求任意数为底的幂 S:selectpower(3,4) value 81 O:selectpower(3,4) value from dual 81 12.取随机数 S:selectrand() value O:select sys.dbms_random.value(0,1) value from dual; 13.取符号 S:selectsign(-8) value -1 O:selectsign(-8) value from dual -1 ----------数学函数 14.圆周率 S:SELECTPI() value 3.1415926535897931 O:不知道 15.sin,cos,tan 参数都以弧度为单位 例如:selectsin(PI()/2) value 得到1(SQLServer) 16.Asin,Acos,Atan,Atan2 返回弧度 17.弧度角度互换(SQLServer,Oracle不知道) DEGREES:弧度-〉角度 RADIANS:角度-〉弧度 ---------数值间比较 18. 求集合最大值 S:selectmax(value) value from (select1 value union select-2 value union select4 value union select3 value)a O:select greatest(1,-2,4,3) value from dual 19. 求集合最小值 S:selectmin(value) value from (select1 value union select-2 value union select4 value union select3 value)a O:select least(1,-2,4,3) value from dual 20.如何处理null值(F2中的null以10代替) S:select F1,IsNull(F2,10