SQLÓï¾ä´óÈ«(1)
--Óï ¾ä ¹¦ ÄÜ
--Êý¾Ý²Ù×÷
SELECT --´ÓÊý¾Ý¿â±íÖмìË÷Êý¾ÝÐкÍÁÐ
INSERT --ÏòÊý¾Ý¿â±íÌí¼ÓÐÂÊý¾ÝÐÐ
DELETE --´ÓÊý¾Ý¿â±íÖÐɾ³ýÊý¾ÝÐÐ
UPDATE --¸üÐÂÊý¾Ý¿â±íÖеÄÊý¾Ý
--Êý¾Ý¶¨Òå
CREATE TABLE --´´½¨Ò»¸öÊý¾Ý¿â±í
DROP TABLE --´ÓÊý¾Ý¿âÖÐɾ³ý±í
ALTER TABLE --ÐÞ¸ÄÊý¾Ý¿â±í½á¹¹
CREATE VIEW --´´½¨Ò»¸öÊÓͼ
DROP VIEW --´ÓÊý¾Ý¿âÖÐɾ³ýÊÓͼ
CREATE INDEX --ΪÊý¾Ý¿â±í´´½¨Ò»¸öË÷Òý
DROP INDEX --´ÓÊý¾Ý¿âÖÐɾ³ýË÷Òý
CREATE PROCEDURE --´´½¨Ò»¸ö´æ´¢¹ý³Ì
DROP PROCEDURE --´ÓÊý¾Ý¿âÖÐɾ³ý´æ´¢¹ý³Ì
CREATE TRIGGER --´´½¨Ò»¸ö´¥·¢Æ÷
DROP TRIGGER --´ÓÊý¾Ý¿âÖÐɾ³ý´¥·¢Æ÷
CREATE SCHEMA --ÏòÊý¾Ý¿âÌí¼ÓÒ»¸öÐÂģʽ
DROP SCHEMA --´ÓÊý¾Ý¿âÖÐɾ³ýÒ»¸öģʽ
CREATE DOMAIN --´´½¨Ò»¸öÊý¾ÝÖµÓò
ALTER DOMAIN --¸Ä±äÓò¶¨Òå
DROP DOMAIN --´ÓÊý¾Ý¿âÖÐɾ³ýÒ»¸öÓò
--Êý¾Ý¿ØÖÆ
GRANT --ÊÚÓèÓû§·ÃÎÊȨÏÞ
DENY --¾Ü¾øÓû§·ÃÎÊ
REVOKE --½â³ýÓû§·ÃÎÊȨÏÞ
--ÊÂÎñ¿ØÖÆ
COMMIT --½áÊøµ±Ç°ÊÂÎñ
ROLLBACK --ÖÐÖ¹µ±Ç°ÊÂÎñ
SET TRANSACTION --¶¨Ò嵱ǰÊÂÎñÊý¾Ý·ÃÎÊÌØÕ÷
--³ÌÐò»¯SQL
DECLARE --Ϊ²éѯÉ趨Óαê
EXPLAN --Ϊ²éѯÃèÊöÊý¾Ý·ÃÎʼƻ®
OPEN --¼ìË÷²éѯ½á¹û´ò¿ªÒ»¸öÓαê
FETCH --¼ìË÷Ò»Ðвéѯ½á¹û
CLOSE --¹Ø±ÕÓαê
PREPARE --Ϊ¶¯Ì¬Ö´ÐÐ×¼±¸SQL Óï¾ä
EXECUTE --¶¯Ì¬µØÖ´ÐÐSQL Óï¾ä
DESCRIBE --ÃèÊö×¼±¸ºÃµÄ²éѯ
---¾Ö²¿±äÁ¿
declare @id char(10)
--set @id = '10010001'
select @id = '10010001'
---È«¾Ö±äÁ¿
---±ØÐëÒÔ@@¿ªÍ·
--IF ELSE
declare @x int @y int @z int
select @x = 1 @y = 2 @z=3
if @x > @y
print 'x > y' --´òÓ¡×Ö·û´®'x > y'
else if @y > @z
print 'y > z'
else print 'z > y'
--CASE
use pangu
update employee
set e_wage =
case
when job_level = ’1’ then e_wage*1.08
when job_level = ’2’ then e_wage*1.07
when job_level = ’3’ then e_wage*1.06
else e_wage*1.05
end
--WHILE CONTINUE BREAK
declare @x int @y int @c int
select @x = 1 @y=1
while @x < 3
begin
print @x --´òÓ¡±äÁ¿x µÄÖµ
while @y < 3
begin
select @c = 100*@x + @y
print @c --´òÓ¡±äÁ¿c µÄÖµ
select @y = @y + 1
end
select @x = @x + 1
select @y = 1
end
--WAITFOR
--Àý µÈ´ý1 Сʱ2 ·ÖÁã3 Ãëºó²ÅÖ´ÐÐS
Ïà¹ØÎĵµ£º
ÔÚSQLÓï¾äÓÅ»¯¹ý³ÌÖУ¬ÎÒÃǾ³£»áÓõ½hint,ÏÖ×ܽáÒ»ÏÂÔÚSQLÓÅ»¯¹ý³ÌÖг£¼ûOracle HINTµÄÓ÷¨£º
1. /*+ALL_ROWS*/
±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑÍÌÍÂÁ¿,ʹ×ÊÔ´ÏûºÄ×îС»¯.
ÀýÈç:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT';
2. /*+FIRST_ROWS*/
±íÃ÷¶ÔÓï¾ ......
String strServerName = "·þÎñÆ÷Ãû»òIP";
String strUserID = "Êý¾Ý¿âÓû§Ãû";
String strPSW= "Êý¾Ý¿âÃÜÂë";
DataTable DBNameTable = new DataTable();
OleDbConnection Connection = new OleDbConnection(String.Format("Provider=SQLOLEDB;Data Source={0};User ID={1};PWD={2}", strServerName, strUserID, strPS ......
--ÔÚ²éѯ·ÖÎöÆ÷ÖÐ,ÔÚServer·þÎñÆ÷Öд´½¨Á´½Ó·þÎñÆ÷
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','·þÎñÆ÷Ãû'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'Óû§Ãû','ÃÜÂë'
Go
--ʹÓÃ
select * from srv_lnk.Êý¾Ý¿âÃû.dbo.±íÃû
--¶Ï¿ª
exec sp_dropserver 'srv_lnk','droplogins' ......
create or replace procedure c
(
v_deptno in emp.deptno%type,
v_max out emp.sal%type
)
as
begin
select max(sal+nvl(comm,0)) into v_max from emp where deptno=v_deptno;
end;
create or replace procedure cc
(
v_empno in emp.empno%type,
v_sal out emp.sal%type,
v_comm out emp.comm% ......
ÔÚ¼ÆËã»úÖÐÊý¾ÝÓÐÁ½ÖÖÌØÕ÷£ºÀàÐͺͳ¤¶È¡£ËùνÊý¾ÝÀàÐ;ÍÊÇÒÔÊý¾ÝµÄ±íÏÖ·½Ê½ºÍ´æ´¢·½Ê½À´»®·ÖµÄÊý¾ÝµÄÖÖÀà¡£
ÔÚSQL Server ÖÐÿ¸ö±äÁ¿¡¢²ÎÊý¡¢±í´ïʽµÈ¶¼ÓÐÊý¾ÝÀàÐÍ¡£ÏµÍ³ÌṩµÄÊý¾ÝÀàÐÍ·ÖΪ¼¸´óÀ࣬Èç±í4-2 Ëùʾ¡£
ÆäÖУ¬BIGINT¡¢ SQL_VARIANT ºÍTABLE ÊÇSQL Server ......