Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : sql

SQLË÷Òý

ʹÓÃË÷Òý¿É¿ìËÙ·ÃÎÊÊý¾Ý¿â±íÖеÄÌØ¶¨ÐÅÏ¢¡£Ë÷ÒýÊǶÔÊý¾Ý¿â±íÖÐÒ»Áлò¶àÁеÄÖµ½øÐÐÅÅÐòµÄÒ»Öֽṹ£¬ÀýÈç employee ±íµÄÐÕ£¨lname£©ÁС£Èç¹ûÒª°´ÐÕ²éÕÒÌØ¶¨Ö°Ô±£¬Óë±ØÐëËÑË÷±íÖеÄËùÓÐÐÐÏà±È£¬Ë÷Òý»á°ïÖúÄú¸ü¿ìµØ»ñµÃ¸ÃÐÅÏ¢¡£
¡¡¡¡Ë÷ÒýÊÇÒ»¸öµ¥¶ÀµÄ¡¢ÎïÀíµÄÊý¾Ý¿â½á¹¹£¬ËüÊÇij¸ö±íÖÐÒ»ÁлòÈô¸ÉÁÐÖµµÄ¼¯ºÏºÍÏàÓ¦µÄÖ¸Ïò±íÖÐÎïÀí±êʶÕâЩֵµÄÊý¾ÝÒ³µÄÂß¼­Ö¸ÕëÇåµ¥¡£
¡¡¡¡Ë÷ÒýÌṩָÏò´æ´¢ÔÚ±íµÄÖ¸¶¨ÁÐÖеÄÊý¾ÝÖµµÄÖ¸Õ룬Ȼºó¸ù¾ÝÄúÖ¸¶¨µÄÅÅÐò˳Ðò¶ÔÕâЩָÕëÅÅÐò¡£Êý¾Ý¿âʹÓÃË÷ÒýµÄ·½Ê½ÓëÄúʹÓÃÊé¼®ÖеÄË÷ÒýµÄ·½Ê½ºÜÏàËÆ£ºËüËÑË÷Ë÷ÒýÒÔÕÒµ½Ìض¨Öµ£¬È»ºó˳ָÕëÕÒµ½°üº¬¸ÃÖµµÄÐС£
¡¡¡¡ÔÚÊý¾Ý¿â¹ØÏµÍ¼ÖУ¬Äú¿ÉÒÔÔÚÑ¡¶¨±íµÄ“Ë÷Òý/¼ü”ÊôÐÔÒ³Öд´½¨¡¢±à¼­»òɾ³ýÿ¸öË÷ÒýÀàÐÍ¡£µ±±£´æË÷ÒýËù¸½¼Óµ½µÄ±í£¬»ò±£´æ¸Ã±íËùÔڵĹØÏµÍ¼Ê±£¬Ë÷Òý½«±£´æÔÚÊý¾Ý¿âÖС£
¡¡¡¡×¢Òâ ²¢·ÇËùÓеÄÊý¾Ý¿â¶¼ÒÔÏàͬµÄ·½Ê½Ê¹ÓÃË÷Òý¡£×÷ΪͨÓùæÔò£¬Ö»Óе±¾­³£²éѯË÷ÒýÁÐÖеÄÊý¾Ýʱ£¬²ÅÐèÒªÔÚ±íÉÏ´´½¨Ë÷Òý¡£Ë÷ÒýÕ¼ÓôÅÅ̿ռ䣬²¢ÇÒ½µµÍÌí¼Ó¡¢É¾³ýºÍ¸üÐÂÐеÄËÙ¶È¡£ÔÚ¶àÊýÇé¿öÏ£¬Ë÷ÒýÓÃÓÚÊý¾Ý¼ìË÷µÄËÙ¶ÈÓÅÊÆ´ó´ó³¬¹ýËüµÄ²»×ãÖ®´¦¡£µ«ÊÇ£¬Èç¹ûÓ¦ÓóÌÐò·Ç³£Æµ·±µØ¸üÐÂÊý¾Ý»ò´ÅÅ̿ռäÓÐÏÞ£¬Ôò¿ÉÄÜÐèÒª ......

¶¯Ì¬Ö´ÐÐsqlÓï¾ä

execute immediate Óï·¨
ºóÃæ¸úÉÏsqlÓï¾ä¿ÉÒÔ¶¯Ì¬Ö´ÐÐsqlÓï¾ä.
ʹÓó¡¾°:
(1)¼ÓÈ붯̬±í.±ÈÈçÄãÓÐÒ»ÕűíµÄÃû×Ö²»Ã÷È·,ÊÇÐèÒªÅжϵõ½µÄ,Ôò¿ÉÒÔʹÓøÃÓï·¨À´Éú³ÉsqlÓï¾ä.
(2)¼ÓÈ붯̬×Ö¶Î.Äã¸ù¾ÝÅжÏ,×îÖÕ»á¼ÓÈëͬһÕűí,µ«ÊÇÕâÕűí¸ù¾Ý²»Í¬µÄÅжÏ×ֶλáÓÐËù²»Í¬,´ËʱÈç¹ûÖ±½ÓдsqlÊǼӲ»½øÈ¥µÄ,±ØÐëʹÓö¯Ì¬sqlÓï¾ä,ÈÃoracle±àÒëʱ²»ÅжÏ×Ö¶ÎÊÇ·ñÓë±íÆ¥Åä,ÕâÑùµÄ»°²ÅÄܶ¯Ì¬¼ÓÈë×Ö¶Î.
Àý:
execute immediate 'insert into po_p_downloaddesc_' || table_languages(1) || '( contentid ) values(''' || s_contentid || ''')';
PS:ҪעÒâµÄµØ·½.
(1)¼ÓÈë×Ö¶Îʱ,Éú³ÉÒÔºóµÄsqlÓï¾äÒªÓë·Ç¶¯Ì¬sqlÓï¾äһģһÑù,Ò²¾ÍÊÇ˵,Èç¹ûsqlÓï¾äÖÐÓÐ''µÄ,ÄÇôÔÚ¶¯Ì¬ÖÐÒ²±ØÐëÆ´½Ó''.
ÀýÈç:
¾²Ì¬sql:insert into page values('123');
¶¯Ì¬sql:execute immediate 'insert into page values('  ''123'' )';
ÖмäÁ©¸ö''123''×îºóÉú³É'123'.Óᄇ̬һÑù²Å¿ÉÒÔ²åÈë,²»È»±¨´í.
¸´ºÏ±íÀàÐÍÈç¹ûÊǽ¨Ò»¸öÀàÐ͵ϰ
create or replace type type_table is table of varchar2(100);
ÄÇôÔÚ´æ´¢¹ý³Ì»òº¯Êý»ò³ÌÐò¿éÖе÷ÓÃʱ±ØÐë³õʼ»¯.
declare
  table_languages type_table := type_ ......

SQL ÓïÑÔ

SQL²Ù×÷È«¼¯
ÏÂÁÐÓï¾ä²¿·ÖÊÇ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ÖÐÁмÓÉϺóÊý¾ÝÀàÐÍÒ²²»ÄÜ¸Ä±ä£¬Î¨Ò»Ä ......

sqlÓëhqlµÄÇø±ð

sqlÊǹØÏµÊý¾Ý¿â²éѯÓïÑÔ,Ãæ¶ÔµÄÊý¾Ý¿â;
¶øhqlÊÇHibernateÕâÑùµÄÊý¾Ý¿â³Ö¾Ã»¯¿ò¼ÜÌṩµÄÄÚÖòéѯÓïÑÔ,ËäÈ»ËûÃǵÄÄ¿µÄ¶¼ÊÇΪÁË´ÓÊý¾Ý¿â²éѯÐèÒªµÄÊý¾Ý,µ«sql²Ù×÷µÄÊÇÊý¾Ý¿â±íºÍ×Ö¶Î,
¶ø×÷ÎªÃæÏò¶ÔÏóµÄhql²Ù×÷µÄÔòÊdz־û¯À༰ÆäÊôÐÔ¡£
¾ÙÒ»¸ö¼òµ¥µÄÀý×Ó
sqlÓï¾ä
select * from tb_goods where id in (select goodsid from tb_getuse group by goodsid)
tb_goodsͨ¹ýgoodsidºÍtb_getuseÏà¹ØÁª£¬ÈçºÎÓÃhqlдÉÏÊösqlÓï¾ä
Èç¹ûAÊÇBµÄ¸¸±í¡£
b.A.id ÖмäµÄAÊÇB±íµÄÓ³ÉäÎļþÖжÔÓ¦µÄAµÄÃû×Ö¡£
from B as b where b.A.id in ( select a.id from A as a) ......

PL/SQLÀý×Ó

ÒÔÏÂÊǾ­²âÑéÄÜÕýÈ·ÔËÐеÄ:
create    table t_emp_log212
(
who varchar2(10) not null,
action varchar2(10) not null,
actime date
);
create or replace trigger tri_emp_insert
before insert
on t_emp
begin
insert into t_emp_log(who,action,actime)values(user,'insert',sysdate);
end;
-------------------------------------------------------------------------------------------
set serveroutput on
declare
 v_empno emp.empno%type:=&empno;
 v_ename emp.ename%type;
 begin
select empno, ename into v_empno,v_ename from emp where empno=v_empno;
dbms_output.put_line(v_ename);
exception
 when others then
 dbms_output.put_line(' your empno is null,ename is null');
end;
-------------------------------------------------------------------------------------------
SET SERVEROUTPUT ON
declare
type tabletype1 is table of varchar2(10) index by binary_integer;
type tabletype2 is table of varchar2(10) index  by binary_integer;
table1 tabl ......

Sql Server 2005 row_number()·ÖÒ³ÐÔÄܲâÊÔ

  ÏÖÔÚ·ÖÒ³·½·¨´ó¶à¼¯ÖÐÔÚselect top/not in/Óαê/row_number£¬¶øselect top·ÖÒ³(ÔÚÕâ»ù´¡ÉÏ»¹Óжþ·Ö·¨)·½·¨Ëƺõ¸üÊÜ´ó¼Ò»¶Ó­£¬ÕâÆªÎÄÕ²¢²»´òËãÈ¥ÌÖÂÛÊÇ·ñͨÓõÄÎÊÌ⣬±¾×ÅʵÓõÄÔ­Ôò£¬»¨ÁËһЩʱ¼äÈ¥²âÊÔrow_number()·ÖÒ³µÄÐÔÄÜ£¬¸Ð¾õ²¢²»ÏñÒ»²¿·ÖÈËËù˵µÄÄÇô¼¦Àߣ¬ÓÉÓÚ½Ó´¥Èí¼þ¿ª·¢²ÅÊ®¸öÔ£¬·½·½ÃæÃæµÄ¶«Î÷¶¼ÒªÑ§£¬¾­ÑéʵÔÚÓÐÏÞ,²»×ãÖ®´¦ÇëÔ­Á£¬²âÊÔÈçÏ£º
ƽ̨Óë»·¾³£º
CPU:AMD 1150 2G µ¥ºË
Äڴ棺1G(ϵͳÕý³£Æô¶¯ºóÔ¼Õ¼300M¿Õ¼ä)
Ó²ÅÌ£ºSATA 160G 8M Cache
ϵͳ£ºwindows 2003 ent+Sql Server 2005 sp2
Êý¾Ý£º¹²500ÍòÌõ
-------------------------------------------------------------------
²âÊÔÊý¾Ý£º
create table test_table
(
id   int identity(1,1) primary key not null,
cid   int  not null,
userName  varchar(50) null,
userPwd   varchar(50) null,
createTime datetime null
)
---------------------------------------------------------------------
²åÈë¼Ç¼(cid·Ö±ð²åÈë1,2,3,4,»úÆ÷ʵÔÚÌ«Âý,×ܹ²Ö»²åÈë500ÍòÌõ)£º
declare @count int
set @count=1
while @count<=1000000 ......
×ܼǼÊý:4346; ×ÜÒ³Êý:725; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [459] [460] [461] [462] 463 [464] [465] [466] [467] [468]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ