SQL Server 2005ÖеÄT SQLÔöÇ¿A
TOP ÔöÇ¿¡£¿ÉÒÔÖ¸¶¨Ò»¸öÊý×Ö±í´ïʽ£¬ÒÔ·µ»ØÒªÍ¨¹ý²éѯӰÏìµÄÐÐÊý»ò°Ù·Ö±È£¬»¹¿ÉÒÔ¸ù¾ÝÇé¿öʹÓñäÁ¿»ò×Ó²éѯ¡£
¿ÉÒÔÔÚDELETE¡¢UPDATEºÍINSERT²éѯÖÐʹÓÃTOPÑ¡Ïî¡£
2¡¢¸üºÃµØÌæ»»SET ROWCOUNTÑ¡Ïʹ֮¸üΪÓÐЧ¡£
OUTPUT
1¡¢SQL Server 2005ÒýÈëÒ»¸öеÄOUTPUT×Ӿ䣬ÒÔʹÄú¿ÉÒÔ³åÐÞ¸ÄÓï¾ä(INSERT¡¢UPDATE¡¢DELETE)Öн«Êý¾Ý·µ»Øµ½±í±äÁ¿ÖС£
2¡¢ÐµÄOUTPUT×Ó¾ÖµÄÓ﷨Ϊ£º
OUTPUT INTO @table_variable
¿ÉÒÔͨ¹ýÒýÓòåÈëµÄ±í»òɾ³ýµÄ±íÀ´·ÃÎʱ»Ð޸ĵÄÐеľÉ/ÐÂÓ°Ïó£¬Æä·½Ê½Óë·ÃÎÊ´¥·¢Æ÷ÀàËÆ¡£ÔÚINSERTÓï¾äÖУ¬Ö»ÄÜ·ÃÎʲåÈëµÄ±í¡£ÔÚDELETEÓï¾äÖУ¬Ö»ÄÜ·ÃÎÊɾ³ýµÄ±í¡£ÔÚUPDATEÓï¾äÖУ¬¿ÉÒÔ·ÃÎʲåÈëµÄ±íºÍɾ³ýµÄ±í¡£
USE demo
GO
CREATE TABLE tt
(
id INT IDENTITY,
c1 VARCHAR(15)
)
GO
INSERT INTO tt VALUES ('r1')
INSERT INTO tt VALUES ('r2')
INSERT INTO tt VALUES ('r5')
INSERT INTO tt VALUES ('r6')
INSERT INTO tt VALUES ('r7')
INSERT INTO tt VALUES ('r8')
INSERT INTO tt VALUES ('r9')
INSERT INTO tt VALUES ('r10')
DECLARE @del AS TABLE (deletedId INT, deletedValue VARCHAR(15))
DELETE tt
OUTPUT DELETED.id, DELETED.c1 INTO @del
WHERE id < 3
SELECT * from @del
GO
-----------------------------------------------
USE demo
GO
CREATE TABLE toptest (column1 VARCHAR(150))
GO
INSERT INTO toptest VALUES('t1')
INSERT INTO toptest VALUES('t2')
INSERT INTO toptest VALUES('t3')
INSERT INTO toptest VALUES('t4')
INSERT INTO toptest VALUES('t5')
INSERT INTO toptest VALUES('t6')
INSERT INTO toptest VALUES('t7')
INSERT INTO toptest VALUES('t8')
SELECT * from toptest
GO
CREATE TABLE toptest2 (column2 VARCHAR(150))
GO
INSERT INTO toptest2 VALUES('c1')
INSERT INTO toptest2 VALUES('c2')
--ÉùÃ÷3¸ö±äÁ¿
DECLARE @a INT
DECLARE @b INT
DECLARE @c INT
--¸³Öµ
SET @a = 10
SET @b = 5
SELECT @c = @a/@b
--ʹÓüÆËã±í´ïʽ
SELECT TOP(@c) * from toptest
--ʹÓÃSELECTÓï¾ä×÷ΪÌõ¼þ
SELECT TOP(SELECT COUNT(*) from toptest2) *
from toptest
--Ö¸³ötop
DELETE TOP(2) toptest where column1>'t6'
--¸üÐÂtop
UPDATE TOP(2) toptest SET column1 = 'hi' where column1<='t2'
SELECT * from toptest
Ïà¹ØÎĵµ£º
SQL³£ÓÃÓï¾ä
SQLÓï¾äÏÈǰдµÄʱºò£¬ºÜÈÝÒ×°ÑÒ»Ð©ÌØÊâµÄÓ÷¨Íü¼Ç£¬ÎÒÌØ´ËÕûÀíÁËÒ»ÏÂSQLÓï¾ä²Ù×÷¡£
Ò»¡¢»ù´¡
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
CREATE DATABASE database-name
2¡¢ËµÃ÷£ºÉ¾³ýÊý¾Ý¿â
drop database dbname
3¡¢ËµÃ÷£º±¸·Ýsql server
--- ´´½¨ ±¸·ÝÊý¾ÝµÄ device
USE master
EXEC sp_addumpdevice 'disk ......
ÔÎÄ:http://www.blogjava.net/Unmi/archive/2009/01/05/249956.html
ÔÚ Oracle Êý¾Ý¿âÖУ¬ÎÒÃÇͨ³£ÔÚ²»Í¬Êý¾Ý¿âµÄ±í¼ä¼Ç¼½øÐи´ÖÆ»òÇ¨ÒÆÊ±»áÓÃÒÔϼ¸ÖÖ·½·¨£º
1. A ±íµÄ¼Ç¼µ¼³öΪһÌõÌõ·ÖºÅ¸ô¿ªµÄ insert Óï¾ä£¬È»ºóÖ´ÐвåÈëµ½ B ±íÖÐ
2. ½¨Á¢Êý¾Ý¿â¼äµÄ dblink£¬È»ºóÓà create table B as select * from A ......
TOM´óÊåµÄµ÷ÓÅÊéÖÐ˵¹ýÒ»¾ä»°£¬¾ßÌåÓ¢ÎľÍÍüÁË£¬´ó¸ÅÒâ˼¾ÍÊÇ£ºÈç¹ûÓÐÈËÈÃÎÒд±¾ÔõÑùÈÃORACLEÐÔÄÜ×îÂýµÄÊéµÄ»°ÎһὫȡÏû°ó¶¨±äÁ¿(bind variable)×öΪÊéµÄµÚÒ»ÕºÍ×îºóÒ»ÕÂ(ËûµÄÒâ˼ÊÇËûºÜÓÐÓÄĬ~~!)£¬¿É¼û°ó¶¨±äÁ¿µÄÖØÒªÐÔ¡£
°ó¶¨±äÁ¿´ó¶àÓÃÔÚOLTP(online transaction process)ÖУ¬ÔÚOLAP(online analizy process)ÖоÍû± ......
ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£
SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)
Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
CR ......
1. ÀûÓòâÊÔ¹¤¾ßÄ£Äâ¶à¸ö×îÖÕÓû§½øÐв¢·¢²âÊÔ; ÕâÖÖ²âÊÔ·½·¨µÄȱµã£º×îÖÕÓû§ÍùÍù²¢²»ÊÇÖ±½ÓÁ¬½Óµ½Êý¾Ý¿âÉÏ£¬¶øÊÇÒª¾¹ýÒ»¸öºÍ¶à¸öÖмä·þÎñ³ÌÐò£¬ËùÒÔ²¢²»Äܱ£Ö¤·ÃÎÊÊý¾Ý¿âʱ»¹ÊDz¢·¢¡£Æä´Î£¬ÕâÖÖ²âÊÔ·½·¨ÐèÒªµÈµ½¿Í»§¶Ë³ÌÐò¡¢·þÎñ¶Ë³ÌÐòÈ«²¿Íê³É²ÅÄܽøÐÐ; 2. ÀûÓòâÊÔ¹¤¾ß±àд½Å±¾£¬Ö±½ÓÁ¬½ÓÊý¾Ý¿â½øÐв¢·¢²âÊÔ; ÕâÖÖ·½ ......