小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

SQL Server中一個語句塊實現(xiàn)多條語句插入的方法

 yuelianga 2011-01-02

SQL Server中一個語句塊實現(xiàn)多條語句插入的方法

http://database.51cto.com  2010-09-06 10:38  興百放  博客園  我要評論(0)
  • 摘要:本文將為您介紹在SQL Server數(shù)據(jù)庫中使用一個語句塊實現(xiàn)多條語句插入的方法,供您參考,希望對您能夠有所幫助。
  • 標簽:SQL Server  語句

本文將為您介紹在SQL Server數(shù)據(jù)庫中使用一個語句塊實現(xiàn)多條語句插入的方法,供您參考,希望對您能夠有所幫助。

我們在日常操作中,免不了對數(shù)據(jù)庫的某張表,一次性的要插入多條記錄,但是首先想到的就是復制,粘帖N多重復的INSERT INTO 語句,萬一某一個少了一個分號,或多個逗號之類的,產生錯誤,要找起來可就費盡了,既浪費時間,又耽誤工作。 

除了上面所說的方法外,其實還有二中方法,相比較起來要比之前那個要簡潔。 

首先是之前那個方法:    

INSERT INTO MyTable(ID,NAME) 123');
INSERT INTO MyTable(ID,NAME) 456');
INSERT INTO MyTable(ID,NAME) 789');

第二種方法,使用UNION ALL來進行插入操作:   

INSERT INTO MyTable(ID,NAME)
SELECT 4,'000'
UNION ALL
SELECT 5,'001'
UNION ALL
SELECT 6,'002'

是不是要比第一種方法簡單點,據(jù)說要比第一種要快! 

第三種方法就有點特別了,是SQL Server2008特有的,所以,如果你不是SQL Server2008,就不能使用這種方法了,所以趕快升級吧!體驗一下SQL Server2008給我們帶了的好處。  

使用SQL語句查看SQL Server事務日志的方法

http://database.51cto.com  2010-09-06 09:36  路上的人  博客園  我要評論(0)
  • 摘要:下面將為您介紹使用用sql語句dbcc log查看SQL Server 數(shù)據(jù)庫中的事務日志的方法,供您參考,希望對您有所啟迪。
  • 標簽:SQL  語句

如果需要查看SQL Server 數(shù)據(jù)庫中的事務日志,有什么方法呢?下面將為您介紹使用用sql語句dbcc log查看的方法,供您參考,希望對您有所啟迪。

1)用系統(tǒng)函數(shù)

SELECT allocunitname,operation,[RowLog Contents 0] as r0,[RowLog Contents 1] as r1FROM::Fn_dblog(null,null)where allocunitname like'dbo.TArea%'and operation in('LOP_INSERT_ROWS','LOP_DELETE_ROWS')
 
2)用DBCC

DBCC log('hrdb', TYPE=2)
 
dbcc log(dbname,4)       --(n=0,1,2,3,4)

1 - 更多信息plus flags, tags, row length

2 - 非常詳細的信息plus object name, index name,page id, slot id

3 - 每種操作的全部信息

4 - 每種操作的全部信息加上該事務的16進制信息

默認 type = 0?
 
 

sql server中如何查看執(zhí)行效率不高的語句

http://database.51cto.com  2010-09-06 13:41  佚名  互聯(lián)網(wǎng)  我要評論(0)
  • 摘要:sql server中,如果想知道有哪些語句是執(zhí)行效率不高的,應該如何查看呢?下面就將為您介紹sql server中如何查看執(zhí)行效率不高的語句,供您參考。
  • 標簽:sql server  語句

sql server中,如果想知道有哪些語句是執(zhí)行效率不高的,應該如何查看呢?下面就將為您介紹sql server中如何查看執(zhí)行效率不高的語句,供您參考。

在測量功能時,先以下命令清除sql server的緩存

dbcc freeProcCache

在點擊某個按鈕,執(zhí)行完后,再執(zhí)行下面語句,就可以知道系統(tǒng)運行什么Sql和多少次了,其主要慢語句是那些了;

SELECT creation_time  N'語句編譯時間'
        ,last_execution_time  N'上次執(zhí)行時間'
        ,total_physical_reads N'物理讀取總次數(shù)'
        ,total_logical_reads/execution_count N'每次邏輯讀次數(shù)'
        ,total_logical_reads  N'邏輯讀取總次數(shù)'
        ,total_logical_writes N'邏輯寫入總次數(shù)'
        ,execution_count  N'執(zhí)行次數(shù)'
        ,total_worker_time/1000 N'所用的CPU總時間ms'
        ,total_elapsed_time/1000  N'總花費時間ms'
        ,(total_elapsed_time / execution_count)/1000  N'平均時間ms'
        ,SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
         ((CASE statement_end_offset
          WHEN -1 THEN DATALENGTH(st.text)
          ELSE qs.statement_end_offset END
            - qs.statement_start_offset)/2) + 1) N'執(zhí)行語句'
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st
where SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
         ((CASE statement_end_offset
          WHEN -1 THEN DATALENGTH(st.text)
          ELSE qs.statement_end_offset END
            - qs.statement_start_offset)/2) + 1) not like '%fetch%'
ORDER BY  total_elapsed_time / execution_count DESC;

SQL語句中SELECT語句的執(zhí)行順序

http://database.51cto.com  2010-09-03 14:47  佚名  博客園  我要評論(0)
  • 摘要:下面將為您詳細介紹大家比較少關注的SQL語句中SELECT語句的執(zhí)行順序,供您參考,希望對您能夠有所幫助。
  • 標簽:SQL  SELECT語句

SELECT語句的執(zhí)行順序大家比較少關注,下面將為您詳細介紹SQL語句中SELECT語句的執(zhí)行順序,供您參考,希望對您能夠有所幫助。

SELECT語句的執(zhí)行的邏輯查詢處理步驟:

(8)SELECT (9)DISTINCT
(11)<TOP_specification> <select_list>
(1)FROM <left_table>
(3) <join_type> JOIN <right_table>
(2)  ON <join_condition>
(4)WHERE <where_condition>
(5)GROUP BY <group_by_list>
(6)WITH {CUBE | ROLLUP}
(7)HAVING <having_condition>
(10)ORDER BY <order_by_list>

每個步驟產生一個虛擬表,該虛擬表被用作下一個步驟的輸入。只有最后一步生成的表返回給調用者。如

果沒有某一子句,則跳過相應的步驟。

1. FROM:對FROM子句中的前兩個表執(zhí)行笛卡爾積,生成虛擬表VT1。

2. ON:對VT1應用ON篩選器。只有那些使<join_condition>為真的行才被插入VT2。

3. OUTER(JOIN):如果指定了OUTER JOIN,保留表中未找到匹配的行將作為外部行添加到VT2,生成VT3。

如果FROM子句包含兩個以上的表,則對上一個聯(lián)接生成的結果表和下一個表重復執(zhí)行步驟1到步驟3,直到

處理完所有的表為止。

4. 對VT3應用WHERE篩選器。只有使<where_condition>為TRUE的行才被插入VT4。

5. GROUP BY:按GROUP BY 子句中的列列表對VT4中的行分組,生成VT5。

6. CUBE|ROLLUP:把超組插入VT5,生成VT6。

7. HAVING:對VT6應用HAVING篩選器。只有使<having_condition>為TRUE的組才會被插入VT7。

8. SELECT:處理SELECT列表,產生VT8。

9. DISTINCT:將重復的行從VT8中移除,產生VT9。

10. ORDER BY:將VT9中的行按ORDER BY子句中的列列表排序,生成一個有表(VC10)。

11. TOP:從VC10的開始處選擇指定數(shù)量或比例的行,生成表VT11,并返回給調用者。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多