MsSql ºÍ Oracle ¿çÊý¾Ý¿â²éѯ
SQL
insert into table_name(colum1,colum2)
select colum1,colum2
from opendatasource('sqloledb','data source=·þÎñÆ÷Ãû;user id=Óû§Ãû ;password=ÃÜÂë ').database_name.dbo.table_name
ÈçÖ´ÐгöÏÖÒÔÏ´íÎó”sql server ×èÖ¹Á˶Ô×é¼þ \'ad hoc distributed queries\' µÄ·ÃÎÊ“£¬½â¾ö·½·¨ÈçÏ£º
ÆôÓÃAd Hoc Distributed Queries£º
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
oracle
oracle ÖÐÌí¼ÓÅäÖÃ
test=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.221.0.1)(PORT = 1001))
)
(CONNECT_DATA =
(SERVICE_NAME = servname)
)
)
¡¡
create public database link linkname connect to Óû§Ãû identified by ÃÜÂë¡¡
using 'test'
select * from table_name@linkname
×¢ÒâÓÐʱºò»á±¨ "insufficienct privilege" ÇëÈ·¶¨½ÇÉ«ÖÐÊÇ·ñ¿ªÍ¨connectµÄȨÏÞŶ
Ïà¹ØÎĵµ£º
¸ù¾ÝǰЩÌìΪij´ó·É»ú¹«Ë¾µ¼Èëij´ó·É»úÉú²úÊý¾ÝµÄ¾Àú£¬×¼±¸Ð´Æª¹ØÓÚOracleµ¼³öÎļþDMP¸ñʽµÄ·ÖÎö£¬½á¹ûÔÚ±¾»úµ¼³öÒ»×éÑÝʾÊý¾Ýʱºò£¬³öÏÖÁË´íÎó£¬Ë³±ã½â¾öÏ¡£
±¾»ú×°µÄÊÇOracle 11g 32bit(11.0.6)µÄClient£¬Ö÷ÒªÊÇΪÁËʹÓÃODT.Net 11.0.6.21£¬Ö§³ÖVS2008¡£µ«ÊDzÉÓÃEXPÃüÁîµ¼³öÊý¾Ý¿âµÄʱºò£¬³öÏÖÁËЩ¹îÒìµÄ´íÎó¡£
Ö´Ð ......
OracleµÄËø»úÖÆ¹éÄÉ×ܽá
ËøÊÇ·ÀÖ¹ÔÚÁ½¸öÊÂÎñ²Ù×÷ͬһ¸öÊý¾ÝÔ´£¨±í»òÐУ©Ê±½»»¥ÆÆ»µÊý¾ÝµÄÒ»ÖÖ»úÖÆ¡£Oracle²ÉÓ÷âËø¼¼Êõ±£Ö¤²¢·¢²Ù×÷µÄ¿É´®ÐÐÐÔ¡£OracleµÄËø·ÖΪÁ½´ó
ÀࣺÊý¾ÝËø£¨Ò²³ÆDMLËø£©ºÍ×ÖµäËø¡£×ÖµäËøÊÇOracle
DBMSÄÚ²¿ÓÃÓÚ¶Ô×Öµä±íµÄ·âËø¡£×ÖµäËø°üÀ¨Óï·¨·ÖÎöËøºÍDDLËø£¬ÓÉDBMSÔÚ±ØÒª ......
¹ØÓÚoracleµÄÐм¶Ëø
¡¡¡¡ÔÚoracleÖÐ,Ðм¶ËøÖ»¶ÔÓû§ÕýÔÚ·ÃÎʵÄÐнøÐÐËø¶¨¡£
¡¡¡¡Èç¹û¸ÃÓû§ÕýÔÚÐÞ¸ÄijÐУ¬ÄÇôÆäËûÓû§¾Í¿ÉÒÔ¸üÐÂͬһ±íÖиÃÐÐÖ®ÍâµÄÊý¾Ý¡£
¡¡¡¡Ðм¶ËøÊÇÒ»ÖÖÅÅËûËø£¬·ÀÖ¹ÆäËûÊÂÎñÐ޸ĴËÐУ¬µ«ÊDz»»á×èÖ¹¶ÁÈ¡´ËÐеIJÙ×÷
¡£
¡¡¡¡ÔÚʹÓÃINSERT¡¢UPDATE¡¢DELETE ºÍSELECT…FOR UPDATE µÈÓï¾äʱ ......
Ê×ÏȼÆËã»úÉϱØÐë°²×°oracle£¬²¢ÅäÖú÷þÎñÃû
°²×°oracleµÄ¹ý³ÌÖÐÒ»°ã»áÒªÇó½¨Á¢Ò»¸öÊý¾Ý¿â£¬Ò²¿ÉÒÔÖ®ºóÔÙ´´½¨
Õâ¸öºóÃæÓÐÒ»¸ö Êý¾Ý¿âÅäÖÃÖúÀí £¨´´½¨ÐÞ¸ÄÊý¾Ý¿âµÄ£¬Ò»°ãÃÜÂë´´½¨ÒªÇó×Öĸ¿ªÍ·£¬´óÓÚ7λɶµÄ£©ºÍÒ»¸önetÅäÖÃÖúÀí£¨Ìí¼Ó»òÕßÐÞ¸ÄÒ»¸öÊý¾Ý¿â·þÎñÃû£©£¬Ò»°ãÓÃplsql developerÔ¶³Ì²Ù×÷oracleÊý¾Ý¿â ......
ÎÒÃǶ¼ÖªµÀORACLE²»»á·¢ÉúËøÉý¼¶£¬Ëø¶ÔÓÚORACLEÀ´Ëµ²¢²»ÊÇϡȱ×ÊÔ´£¬ÎªÊ²Ã´DML lock¶ÔÓÚORACLEÀ´Ëµ²»ÊÇϡȱ×ÊÔ´£¬ÏÂÃæÀ´Ñ°ÕҴ𰸡£
SQL> select * from emp where sal>2999;
EMPNO ENAME JOB MGR HIREDATE ......