Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

²âÁ¿sql ½âÎöºÄ·ÑµÄʱ¼ä±ÈÀý

Çå¿Õ¹²Ïí³Ø£¬¹Ø±Õ£¬ÖØÆôÊý¾Ý¿â
SQL> shutdown immediate;
SQL> startup;
¿ªÆô ʱ¼äͳ¼Æ
SQL> set timi on
SQL> select count(*) from dba_objects;
  COUNT(*)
----------
     11308
Elapsed: 00:00:00.19
SQL> /
  COUNT(*)
----------
     11308
Elapsed: 00:00:00.03
SQL> /
  COUNT(*)
----------
     11308
Elapsed: 00:00:00.03
SQL> select 16/19 from dual;
     16/19
----------
.842105263
¿ÉÒÔ¿´µ½ ½âÎöʱ¼ä ËùÕ¼ÓÃÁ˾ø´ó²¿·Öʱ¼ä £¬µ¥Æ¾Õâ¸öʵÑé ²»ÄÜ˵SQL½âÎö»áÕ¼ÓÃ84%µÄʱ¼ä£¬²»¹ý¿ÉÒԿ϶¨µÄÊÇ SQL½âÎö»áÕ¼ÓÃSQLÓï¾äÔËÐеĺܴ󲿷Öʱ¼ä¡£
ÏÂÃæÀ´²âÊÔһϠʹÓð󶨱äÁ¿ ºÍ²»Ê¹Óð󶨱äÁ¿ËùSQL½âÎöËù´øÀ´µÄÐÔÄÜÎÊÌâ
Ö´ÐÐÁ½¸ö½Å±¾ µÚÒ»¸ö ½Å±¾²»Ê¹Óð󶨱äÁ¿
bind1.sql½Å±¾ÄÚÈÝÈçÏÂ:
declare
type cur is ref cursor;
cur1 cur;
name varchar2(1000);
begin
for i in 1..1000 loop
open cur1 for 'select object_name from dba_objects where object_id=' || i;
fetch cur1 into name;
close cur1;
end loop;
end ;
/
bind2.sql ½Å±¾ÄÚÈÝ£º
declare
type cur is ref cursor;
cur1 cur;
name varchar2(1000);
begin
for i in 1..1000 loop
open cur1 for 'select object_name from dba_objects where object_id=:x'using i;
fetch cur1 into name;
close cur1;
end loop;
end ;
/
¿ªÊ¼²âÊÔ
SQL> alter system flush shared_pool;
System altered.
SQL> set timi on
SQL> @bind1
PL/SQL procedure successfully completed.
Elapsed: 00:00:07.51
SQL>select sql_text from v$sqlarea where sql_text like '%dba_objects%';
SQL_TEXT
----------------------------------------------------------------------------------------------------
select object_name from dba_objects where object_id=506
select object_name from dba_objects where object_id=716
select object_name from dba_objects where object_id=129
....................
¿ÉÒÔ¿´µ½ ¸ÃÓï¾ä½âÎöÁË1000´Î
SQL> alter system flush shared_pool;
System altered.
SQL> @bind2
PL/SQL procedure successfully completed.
Elapsed: 00:00:00.64


Ïà¹ØÎĵµ£º

SQL 2K Êý¾ÝÀàÐÍ £¨×ª£©

£¨×ªÔØ£©SQL 2K Êý¾ÝÀàÐÍ 
(1)char¡¢varchar¡¢textºÍnchar¡¢nvarchar¡¢ntext
charºÍvarcharµÄ³¤¶È¶¼ÔÚ1µ½8000Ö®¼ä£¬ËüÃǵÄÇø±ðÔÚÓÚcharÊǶ¨³¤×Ö·ûÊý¾Ý£¬¶øvarcharÊDZ䳤×Ö·ûÊý¾Ý¡£Ëùν¶¨³¤¾ÍÊdz¤¶È¹Ì¶¨µÄ£¬µ±ÊäÈëµÄÊý¾Ý³¤¶ÈûÓдﵽָ¶¨µÄ³¤¶Èʱ½«×Ô¶¯ÒÔÓ¢ÎĿոñÔÚÆäºóÃæÌî³ä£¬Ê¹³¤¶È´ïµ½ÏàÓ¦µÄ³¤¶È£»¶ø±ä³¤×Ö·ûÊý¾Ý ......

sqlÊý¾Ý¿âÖÃÒɽâ¾ö°ì·¨

×¢'svw'Ϊ³öÎÊÌâµÄÊý¾Ý¿â,´Ë·½Ê½¶Ôsql7.0ÒÔÉϰ汾ÓÐЧ,ÆäËüµÍ°æ±¾Îª²âÊÔ
sp_configure  'allow',1 
go
reconfigure  with  override 
go
update  sysdatabases  set  status=32768  where  name='svw' 
go
dbcc  rebuild_log('svw','D:\mssql7\data ......

sql¶à±íÁ¬½Ó²éѯ

inner join,full outer join,left join,right jion
ÄÚ²¿Á¬½Ó inner join Á½±í¶¼Âú×ãµÄ×éºÏ
full outer È«Á¬ Á½±íÏàͬµÄ×éºÏÔÚÒ»Æð£¬A±íÓУ¬B±íûÓеÄÊý¾Ý£¨ÏÔʾΪnull£©,ͬÑùB±íÓÐ
A±íûÓеÄÏÔʾΪ(null)
A±í left join  B±í ×óÁ¬,ÒÔA±íΪ»ù´¡£¬A±íµÄÈ«²¿Êý¾Ý£¬B±íÓеÄ×éºÏ¡£Ã»ÓеÄΪnull
A±í right join B±í ÓÒÁ ......

ÔÚsql serverÖйØÓÚÓαêcursorµÄʹÓÃ

--´Ë´¦Ê¹ÓÃpubs¿â
declare @myname varchar(50)
declare @fname varchar(20)
declare @lname varchar(20)
declare my_cursor cursor for
select fname,lname from employee order by emp_id
open my_cursor
fetch next from my_cursor into @fname,@lname
while @@fetch_status=0
begin
    set @ ......

SQL Server£º¶¨Ê±×÷ÒµµÄÉèÖ÷½·¨

¡¾×ª¡¿http://space.cnblogs.com/group/topic/33473/
http://www.cnblogs.com/ghd258/archive/2005/10/24/260836.html
Èç¹ûÔÚSQL Server ÀïÐèÒª¶¨Ê±»òÕßÿ¸ôÒ»¶Îʱ¼äÖ´ÐÐij¸ö´æ´¢¹ý³Ì»ò3200×Ö·ûÒÔÄÚµÄSQLÓï¾äʱ,¿ÉÒÔÓùÜÀí->SQL Server´úÀí->×÷ÒµÀ´ÊµÏÖ¡£ 
¡¡¡¡1¡¢¹ÜÀí->SQL Server´ú ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ