應該是指~ XXXX.SQL 的檔案, 裡面用SQLPLUS的架構撰寫,可供OS系統去呼叫使用!!
B. sql腳本和sql語言有什麼區別
sql腳本是有sql語言構成。
sql語句和sql腳本語法一樣,一般sql語句都是用來完成一個簡單的功能。
其實單個sql語句亦是sql腳本。
C. 如何讓一個SQL執行並行
資料庫事務是指作為單個邏輯工作單元執行的一系列操作。 設想網上購物的一次交易,其付款過程至少包括以下幾步資料庫操作: · 更新客戶所購商品的庫存信息 · 保存客戶付款信息--可能包括與銀行系統的交互 · 生成訂單並且保存到資料庫中 · 更新用戶相關信息,例如購物數量等等 正常的情況下,這些操作將順利進行,最終交易成功,與交易相關的所有資料庫信息也成功地更新。但是,如果在這一系列過程中任何一個環節出了差錯,例如在更新商品庫存信息時發生異常、該顧客銀行帳戶存款不足等,都將導致交易失敗。一旦交易失敗,資料庫中所有信息都必須保持交易前的狀態不變,比如最後一步更新用戶信息時失敗而導致交易失敗,那麼必須保證這筆失敗的交易不影響資料庫的狀態--庫存信息沒有被更新、用戶也沒有付款,訂單也沒有生成。否則,資料庫的信息將會一片混亂而不可預測。 資料庫事務正是用來保證這種情況下交易的平穩性和可預測性的技術。 [編輯本段]資料庫事務的ACID屬性 事務處理可以確保除非事務性單元內的所有操作都成功完成,否則不會永久更新面向數據的資源。通過將一組相關操作組合為一個要麼全部成功要麼全部失敗的單元,可以簡化錯誤恢復並使應用程序更加可靠。一個邏輯工作單元要成為事務,必須滿足所謂的ACID(原子性、一致性、隔離性和持久性)屬性: · 原子性 (atomic) 事務必須是原子工作單元;對於其數據修改,要麼全都執行,要麼全都不執行。通常,與某個事務關聯的操作具有共同的目標,並且是相互依賴的。如果系統只執行這些操作的一個子集,則可能會破壞事務的總體目標。原子性消除了系統處理操作子集的可能性。 · 一致性 (consistent) 事務在完成時,必須使所有的數據都保持一致狀態。在相關資料庫中,所有規則都必須應用於事務的修改,以保持所有數據的完整性。事務結束時,所有的內部數據結構(如 B 樹索引或雙向鏈表)都必須是正確的。某些維護一致性的責任由應用程序開發人員承擔,他們必須確保應用程序已強制所有已知的完整性約束。例如,當開發用於轉帳的應用程序時,應避免在轉帳過程中任意移動小數點。 · 隔離性 (insulation) 由並發事務所作的修改必須與任何其它並發事務所作的修改隔離。事務查看數據時數據所處的狀態,要麼是另一並發事務修改它之前的狀態,要麼是另一事務修改它之後的狀態,事務不會查看中間狀態的數據。這稱為可串列性,因為它能夠重新裝載起始數據,並且重播一系列事務,以使數據結束時的狀態與原始事務執行的狀態相同。當事務可序列化時將獲得最高的隔離級別。在此級別上,從一組可並行執行的事務獲得的結果與通過連續運行每個事務所獲得的結果相同。由於高度隔離會限制可並行執行的事務數,所以一些應用程序降低隔離級別以換取更大的吞吐量。 · 持久性 (Duration) 事務完成之後,它對於系統的影響是永久性的。該修改即使出現致命的系統故障也將一直保持。 [編輯本段]DBMS的責任 企業級的資料庫管理系統(DBMS)都有責任提供一種保證事務的物理完整性的機制。就常用的SQL Server2000系統而言,它具備鎖定設備隔離事務、記錄設備保證事務持久性等機制。因此,我們不必關心資料庫事務的物理完整性,而應該關注在什麼情況下使用資料庫事務、事務對性能的影響,如何使用事務等等。 本文將涉及到在.net框架下使用C#語言操縱資料庫事務的各個方面。 體驗SQL語言的事務機制 作為大型的企業級資料庫,SQL Server2000對事務提供了很好的支持。我們可以使用SQL語句來定義、提交以及回滾一個事務。
D. 一般在寫SQL時需要注意哪些問題,可以提高查詢的效率
1、把數據、日誌、索引放到不同的I/O設備上,資料庫增加讀取速度,以前可以將Tempdb應放在RAID0上,SQL2000不在支持。數據量(尺寸)越大,提高I/O越重要.
2、縱向、橫向分割表,減少表的尺寸(sp_spaceuse)
3、升級硬體
4、根據查詢條件,建立索引,優化索引、優化訪問方式,限制結果集的數據量。注意填充因子要適當(最好是使用默認值0)。索引應該盡量小,使用位元組數小的列建索引好(參照索引的創建),不要對有限的幾個值的欄位建單一索引如性別欄位
5、提高網速;
6、擴大伺服器的內存,Windows2000和SQLServer2000能支持4-8G的內存。配置虛擬內存:虛擬內存大小應基於計算機上並發運行的服務進行配置。運行MicrosoftSQLServer?2000時,可考慮將虛擬內存大小設置為計算機中安裝的物理內存的1.5倍。如果另外安裝了全文檢索功能,並打算運行Microsoft搜索服務以便執行全文索引和查詢,可考慮:將虛擬內存大小配置為至少是計算機中安裝的物理內存的3倍。將SQLServermaxservermemory伺服器配置選項配置為物理內存的1.5倍(虛擬內存大小設置的一半)。
7、增加伺服器CPU個數;但是必須明白並行處理串列處理更需要資源例如內存。使用並行還是串列程是MsSQL自動評估選擇的。單個任務分解成多個任務,就可以在處理器上運行。例如耽擱查詢的排序、連接、掃描和GROUPBY字句同時執行,SQLSERVER根據系統的負載情況決定最優的並行等級,復雜的需要消耗大量的CPU的查詢最適合並行處理。但是更新操作Update,Insert,Delete還不能並行處理。
8、如果是使用like進行查詢的話,簡單的使用index是不行的,但是全文索引,耗空間。like'a%'使用索引like'%a'不使用索引用like'%a%'查詢時,查詢耗時和欄位值總長度成正比,所以不能用CHAR類型,而是VARCHAR。對於欄位的值很長的建全文索引。
9、DBServer和APPLicationServer分離;OLTP和OLAP分離
10、分布式分區視圖可用於實現資料庫伺服器聯合體。聯合體是一組分開管理的伺服器,但它們相互協作分擔系統的處理負荷。這種通過分區數據形成資料庫伺服器聯合體的機制能夠擴大一組伺服器,以支持大型的多層Web站點的處理需要。有關更多信息,參見設計聯合資料庫伺服器。
E. 什麼是SQL腳本
SQL腳本:生成資料庫項目時,預先部署腳本、資料庫對象定義和後期部署腳本合並為一個生成腳本。
只能指定一個預先部署腳本和一個後期部署腳本,但可在預先部署腳本和後期部署腳本中包含其他腳本。
用於創建資料庫對象的語句的集合。Transact-SQL腳本保存為文件,文件名通常以 .sql結尾。
具體使用環境包含:MY-SQL,SQLServer,oracle。
資料庫腳本包含:存儲過程[Procere],事務[transaction]等,索引[Index],觸發器[Trigger],函數[Function]等。
使用腳本的好處:可以提高數據訪問的效率,並進行相關的數據處理。
(5)sql腳本是串列還是並行擴展閱讀
SQL具有數據定義、數據操縱和數據控制。
1、SQL數據定義功能:能夠定義資料庫的三級模式結構,即外模式、全局模式和內模式結構。在SQL中,外模式有叫做視圖(View),全局模式簡稱模式( Schema),內模式由系統根據資料庫模式自動實現,一般無需用戶過問。
2、SQL數據操縱功能:包括對基本表和視圖的數據插入、刪除和修改,特別是具有很強的數據查詢功能。
3、SQL的數據控制功能:主要是對用戶的訪問許可權加以控制,以保證系統的安全性。
F. 同數據源,並行方式提交的sql查詢語句,資料庫中是並行執行這些sql語句,還是以隊列的方式執行的
你可以寫三個需要運行時行很長的sql語句,中間不用go分隔,就是你要的現象了,我試過,是一齊運行的。