ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£
SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)
Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
CREATE DATABASE database-name
2¡¢ËµÃ÷£ºÉ¾³ýÊý¾Ý¿â
drop database dbname
3¡¢ËµÃ÷£º±¸·Ýsql server
--- ´´½¨ ±¸·ÝÊý¾ÝµÄ device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
--- ¿ªÊ¼ ±¸·Ý
BACKUP DATABASE pubs TO testBack
4¡¢ËµÃ÷£º´´½¨Ð±í
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
¸ù¾ÝÒÑÓÐµÄ±í´´½¨ÐÂ±í£º
A£ºcreate table tab_new like tab_old (ʹÓÃ¾É±í´´½¨Ð±í)
B£ºcreate table tab_new as select col1,col2… from tab_old definition only
5¡¢ËµÃ÷£ºÉ¾³ýбídrop table tabname
6¡¢ËµÃ÷£ºÔö¼ÓÒ»¸öÁÐ
Alter table tabname add column col type
×¢£ºÁÐÔö¼Óºó½«²»ÄÜɾ³ý¡£DB2ÖÐÁмÓÉ ......
-- To allow advanced options to be changed.
EXEC sp_configure 'show advanced options', 1
GO
-- To update the currently configured value for advanced options.
RECONFIGURE
GO
-- To enable the feature.
EXEC sp_configure 'CLR', 0
GO
-- To update the currently configured value for this feature.
RECONFIGURE
GO ......
×÷Õß: cnd8, ¡¡³ö´¦:ITר¼ÒÍøÂÛ̳,¡¡ÔðÈαà¼: ³Â×Óç÷,¡¡2010-04-21 13:00 ¡¡¡¡ÏÖÔÚÐèÒªÔÚһ̨·þÎñÆ÷(A)ÉϵÄÊý¾Ý¿â(Master)Àï·ÃÎÊÁíÍâһ̨·þÎñÆ÷(B)µÄÁíÍâÁ½¸öÊý¾Ý¿â(NZ ºÍ AU)¡£AU ºÍ NZ ÊÇÍøÕ¾µÄ²¿·ÖʵʱÊý¾Ý£¬Ä¿Ç°Ä³Ò»²½²Ù×÷µÄREPLICATION·½°¸ÊÇ´Ó·þÎñÆ÷Bµ½A£¬AU / NZ µÄ±í½á¹¹Í¬Master Êý¾Ý½á¹¹»ù±¾Ò»Ö¡£¡¡¡¡ÏÖÔÚÐèÒªÔÚһ̨·þÎñÆ÷(A)ÉϵÄÊý¾Ý¿â(Master)Àï·ÃÎÊÁíÍâһ̨·þÎñÆ÷(B)µÄÁíÍâÁ½¸öÊý¾Ý¿â(NZ ºÍ AU)¡£AU ºÍ NZ ÊÇÍøÕ¾µÄ²¿·ÖʵʱÊý¾Ý£¬Ä¿Ç°Ä³Ò»²½²Ù×÷µÄREPLICATION·½°¸ÊÇ´Ó·þÎñÆ÷Bµ½A£¬AU / NZ µÄ±í½á¹¹Í¬Master Êý¾Ý½á¹¹»ù±¾Ò»Ö¡£ ¡¡¡¡ÕâÑùÒ»À´£¬µ±°ÑAU Replication µ½ Master ºó£¬ÔÚ°Ñ NZ Replication µ½ Master , Master ÀïµÄ¾Íֻʣ NZ µÄÊý¾ÝÁË¡£·´¹ýÀ´¾ÍÖ»ÓÐAUµÄÁË£¬¾ßÌåµÄReplication ÊÇÔõôһ»ØÊ£¬ÎÒÒ²²»¶®£¬Ò²Ã»ÓÐϸ¿´¡£ ¡¡¡¡Èç¹ûÄÜÔÚMaster ÀïÖ±½Ó²Ù×÷ AU ºÍ NZ ¾ÍºÃÁË¡£ ¡¡¡¡SQLServer Óк¯Êý£º ¡¡¡¡OPENROWSET ºÍ OPENDATASOURCE ¡¡¡¡ÕâÁ½¸öº¯Êý²»µ«ÄÜʵÏÖ´ÓÁíÍâµÄÊý¾Ý¿â¶ÁÊý¾Ý£¬¶øÇÒ»¹ÄÜ´ÓEXCEL¡¢TXT£¬ ORACLE£¬ ODBC µÈ¶ÁÊý¾Ý¡£ ¡¡¡¡--ÆôÓÃAd Hoc Distributed Queries£º ¡¡¡¡exec sp_configure 'show advanced options',1 ¡¡¡¡reconfigure ¡¡¡¡exec ......
¡¡¡¡±¾ÎÄÌÖÂÛSQL Server 2005µÄй¦ÄÜ£¬ËüÔÊÐíÄ㽫XMLÊý¾Ý·Ö½âµ½¹ØÏµ¸ñʽÖУ¬¶ø²»±ØºÄÓÃÌ«¶àÄÚ´æ¡£
¡¡¡¡±¾ÎÄÌÖÂÛSQL Server 2005µÄй¦ÄÜ£¬ËüÔÊÐíÄ㽫XMLÊý¾Ý·Ö½âµ½¹ØÏµ¸ñʽÖУ¬¶ø²»±ØºÄÓÃÌ«¶àÄÚ´æ¡£
¡¡¡¡ÔÚ¾ÙÀý˵Ã÷ÈçºÎ·Ö½âÉÏһƪÎÄÕÂÖеÄÊý¾Ýʱ£¬ÎÒÃÇÊ×ÏÈÁ˽âÒ»ÏÂXQueryºÍËüÔÚSQL Server 2005ÖÐΪ¿ª·¢ÕßÌṩµÄ¹¦ÄÜ¡£
¡¡¡¡XQuery½éÉÜ
¡¡¡¡XQuery£¬Ò²³Æ×÷XML Query£¬ÊÇÒ»ÖÖ²éѯXMLÊý¾ÝµÄÓïÑÔ£¬ÔÊÐíÄãÌáÈ¡ËùÐèµÄ½ÚµãºÍÔªËØ¡£ËüÓÉW3C¶¨Ò壬¿ÉÓÃÓÚ½ñÌìµÄ´ó¶àÊýÖ÷Á÷Êý¾Ý¿âÒýÇæÖУ¬ÈçOracle¡¢DB2ºÍSQL Server¡£
¡¡¡¡SQL Server 2005 XQueryº¯Êý
¡¡¡¡ÏÂÃæµÄËĸöº¯ÊýÊÇSQL Server 2005ÖеÄXQueryº¯Êý¡£(×¢Ò⣬XML¡¢XQueryÓï¾äºÍÏÂÃæµÄº¯Êý¶¼Çø·Ö´óСд¡£ÀýÈ磬SQL±àÒëÆ÷½ÓÊÜXMLÊý¾ÝÖеÄ.exist£¬µ«¾Ü¾ø.EXIST»ò.Exist¡£)
¡¡¡¡xml.exist
¡¡¡¡Õâ¸ö·½·¨¸ù¾ÝÒ»¸öXML½ÚµãÉϵÄËÑË÷±í´ïʽ·µ»ØÒ»¸ö²¼¶ûÖµ¡£ÀýÈ磬ÁбíAÖÐXML´úÂëÆ¬¶ÎÖеÄÓï¾ä½«·µ»Ø1(Õæ)£º
¡¡¡¡SELECT @x.exist('/christmaslist/person[@gift = "socks"]')
¡¡¡¡Õâ¸öÓï¾ä·µ»Ø0(¼Ù)£º
¡¡¡¡SELECT @x. exist ('/christmaslist/zach')
¡¡¡¡ÓÉÓÚ“Socks”Ò»´Ê±»·âÌ×£¬Õâ¸öÓï¾ä½ ......
¡¡¡¡±¾ÎÄÌÖÂÛSQL Server 2005µÄй¦ÄÜ£¬ËüÔÊÐíÄ㽫XMLÊý¾Ý·Ö½âµ½¹ØÏµ¸ñʽÖУ¬¶ø²»±ØºÄÓÃÌ«¶àÄÚ´æ¡£
¡¡¡¡±¾ÎÄÌÖÂÛSQL Server 2005µÄй¦ÄÜ£¬ËüÔÊÐíÄ㽫XMLÊý¾Ý·Ö½âµ½¹ØÏµ¸ñʽÖУ¬¶ø²»±ØºÄÓÃÌ«¶àÄÚ´æ¡£
¡¡¡¡ÔÚ¾ÙÀý˵Ã÷ÈçºÎ·Ö½âÉÏһƪÎÄÕÂÖеÄÊý¾Ýʱ£¬ÎÒÃÇÊ×ÏÈÁ˽âÒ»ÏÂXQueryºÍËüÔÚSQL Server 2005ÖÐΪ¿ª·¢ÕßÌṩµÄ¹¦ÄÜ¡£
¡¡¡¡XQuery½éÉÜ
¡¡¡¡XQuery£¬Ò²³Æ×÷XML Query£¬ÊÇÒ»ÖÖ²éѯXMLÊý¾ÝµÄÓïÑÔ£¬ÔÊÐíÄãÌáÈ¡ËùÐèµÄ½ÚµãºÍÔªËØ¡£ËüÓÉW3C¶¨Ò壬¿ÉÓÃÓÚ½ñÌìµÄ´ó¶àÊýÖ÷Á÷Êý¾Ý¿âÒýÇæÖУ¬ÈçOracle¡¢DB2ºÍSQL Server¡£
¡¡¡¡SQL Server 2005 XQueryº¯Êý
¡¡¡¡ÏÂÃæµÄËĸöº¯ÊýÊÇSQL Server 2005ÖеÄXQueryº¯Êý¡£(×¢Ò⣬XML¡¢XQueryÓï¾äºÍÏÂÃæµÄº¯Êý¶¼Çø·Ö´óСд¡£ÀýÈ磬SQL±àÒëÆ÷½ÓÊÜXMLÊý¾ÝÖеÄ.exist£¬µ«¾Ü¾ø.EXIST»ò.Exist¡£)
¡¡¡¡xml.exist
¡¡¡¡Õâ¸ö·½·¨¸ù¾ÝÒ»¸öXML½ÚµãÉϵÄËÑË÷±í´ïʽ·µ»ØÒ»¸ö²¼¶ûÖµ¡£ÀýÈ磬ÁбíAÖÐXML´úÂëÆ¬¶ÎÖеÄÓï¾ä½«·µ»Ø1(Õæ)£º
¡¡¡¡SELECT @x.exist('/christmaslist/person[@gift = "socks"]')
¡¡¡¡Õâ¸öÓï¾ä·µ»Ø0(¼Ù)£º
¡¡¡¡SELECT @x. exist ('/christmaslist/zach')
¡¡¡¡ÓÉÓÚ“Socks”Ò»´Ê±»·âÌ×£¬Õâ¸öÓï¾ä½ ......
¡¡¡¡(1)ÕûºÏ¼òµ¥,ÎÞ¹ØÁªµÄÊý¾Ý¿â·ÃÎÊ£º
¡¡¡¡Èç¹ûÄãÓм¸¸ö¼òµ¥µÄÊý¾Ý¿â²éѯÓï¾ä,Äã¿ÉÒÔ°ÑËüÃÇÕûºÏµ½Ò»¸ö²éѯÖÐ(¼´Ê¹ËüÃÇÖ®¼äûÓйØÏµ)
¡¡¡¡(2)ɾ³ýÖØ¸´¼Ç¼£º
¡¡¡¡×î¸ßЧµÄɾ³ýÖØ¸´¼Ç¼·½·¨ ( ÒòΪʹÓÃÁËROWID)Àý×Ó£º
¡¡¡¡DELETE from EMP E WHERE E.ROWID > (SELECT MIN(X.ROWID)
¡¡¡¡from EMP X WHERE X.EMP_NO = E.EMP_NO);
¡¡¡¡(3)ÓÃTRUNCATEÌæ´úDELETE£º
¡¡¡¡µ±É¾³ý±íÖеļǼʱ,ÔÚͨ³£Çé¿öÏÂ, »Ø¹ö¶Î(rollback segments ) ÓÃÀ´´æ·Å¿ÉÒÔ±»»Ö¸´µÄÐÅÏ¢. Èç¹ûÄãûÓÐCOMMITÊÂÎñ,ORACLE»á½«Êý¾Ý»Ö¸´µ½É¾³ý֮ǰµÄ״̬(׼ȷµØËµÊǻָ´µ½Ö´ÐÐɾ³ýÃüÁî֮ǰµÄ×´¿ö) ¶øµ±ÔËÓÃTRUNCATEʱ, »Ø¹ö¶Î²»ÔÙ´æ·ÅÈκοɱ»»Ö¸´µÄÐÅÏ¢.µ±ÃüÁîÔËÐкó,Êý¾Ý²»Äܱ»»Ö¸´.Òò´ËºÜÉÙµÄ×ÊÔ´±»µ÷ÓÃ,Ö´ÐÐʱ¼äÒ²»áºÜ¶Ì. (ÒëÕß°´: TRUNCATEÖ»ÔÚɾ³ýÈ«±íÊÊÓÃ,TRUNCATEÊÇDDL²»ÊÇDML)
¡¡¡¡(4)Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)£º
¡¡¡¡ORACLE µÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í driving table)½«±»×îÏÈ´¦Àí£¬ÔÚfrom×Ó¾äÖаüº¬¶à¸ö±íµÄÇé¿öÏÂ,Äã±ØÐëÑ¡Ôñ¼Ç¼ ......
¡¡¡¡¹ØÏµÐÍÊý¾Ýͨ³£ÒԹ淶»¯ÐÎʽ±£´æ£¬¾ÍÊÇ˵ÄãÓ¦¸Ã¾¡¿ÉÄÜÉÙµØÖظ´Êý¾Ý;ͨ³£Çé¿öÏ£¬±íÓë±íÖ®¼ä½öͨ¹ý¸÷ÖÖ¼üֵʵÏÖ¹ØÁª¡£
¡¡¡¡¹ØÏµÐÍÊý¾Ýͨ³£ÒԹ淶»¯ÐÎʽ±£´æ£¬¾ÍÊÇ˵ÄãÓ¦¸Ã¾¡¿ÉÄÜÉÙµØÖظ´Êý¾Ý;ͨ³£Çé¿öÏ£¬±íÓë±íÖ®¼ä½öͨ¹ý¸÷ÖÖ¼üֵʵÏÖ¹ØÁª¡£½øÒ»²½µØ½²£¬¹æ·¶»¯µÄº¬Òå¾ÍÊÇ£ºÄã²»ÄÜÔÚÊý¾Ý¿âÖб£´æ¼ÆËãºóµÄÖµ£¬¶øÄãÖ»ÄÜÔÚÐèÒªµÄʱºòÁÙʱ¼ÆËãÊý¾Ý¿âÖб£´æµÄÖµ¡£
¡¡¡¡¶ÔÊý¾Ý½øÐÐijЩ·ÖÎöͨ³£ÊǺÜÖØÒªµÄ¡£±È·½Ëµ£¬Äã»òÐíÏëÖªµÀÄÄЩ²úÆ·µÄ¶¨µ¥×î¶à»òÕßÄÄЩ¶¨µ¥µÄÀûÈó×î´ó¡£ÕâЩÎÊÌâ¶¼ÒªÇóÄãÕë¶Ô×Ô¼ºµÄSQLÓï¾ä´´½¨Ö´ÐйýÂ˹æÔòµÄ¹«Ê½¡£ÆäÖÐ×îÖØÒªµÄÓï¾äÖ®Ò»¾ÍÊÇGROUP BY×Ӿ䡣
¡¡¡¡NorthwindÊý¾Ý¿âÖе͍µ¥
¡¡¡¡NorthwindÊý¾Ý¿âÊǰüº¬ÔÚSQL Server°²×°Èí¼þÖеÄÁ½¸öʾ·¶Êý¾Ý¿â¡£Õâ¸öÊý¾Ý¿âËäȻ̸²»ÉÏÍêÃÀÎÞȱµ«Ò²×ã¹»Âú×ãÎÒÃÇÌÖÂÛGROUP BYÓï¾äµÄÄ¿µÄÁË¡£ÔÒòÖ®Ò»ÊÇËü¹¤×÷ÔÀíÇåÎú£¬ÔËÐÐÁ¼ºÃ£¬°üº¬ÁËÒ»ÕûÌ×±ê×¼µÄÊý¾Ý±í£¬±ÈÈçCustomers(¿Í»§)¡¢Orders(¶¨µ¥)¡¢Order Details(¶¨µ¥Ï¸½Ú)ºÍ´¦Àí¶¨µ¥µÄProducts(²úÆ·)¡£
¡¡¡¡±íµÄ½á¹¹Ä£Ê½
¡¡¡¡Èç¹ûÄãÏë²é¿´¸÷¸ö¶¨µ¥µÄOrderIDºÍProductID £¬ÒÔϵÄSQLÃüÁî¿ÉÒÔÂú×ãÒªÇó£º
¡¡¡¡SELECT o.OrderID, od.ProductID
¡¡¡¡from&n ......