vs調試存儲過程
① asp.net 怎樣調試 sqlserver 資料庫的存儲過程
1.在wep.config中找到對應的數據連接字元串,增加一個選項Polling=false,即關閉連接池,(調試完成後記得將該選項刪除)
2.然後在vs環境下的伺服器視圖,打開sqlserver視圖,添加「sqlserver伺服器"(如果沒有的話),然後右鍵資料庫伺服器,允許"允許程序調試"
3.最後在vs里打開資料庫里的存儲過程,設置斷點,然後f5使用的此存儲過程的asp.net項目。
這樣當使用該存儲過程時,就能像普通的代碼的調試的一樣進行了,最後完成後將Polling=false關閉
② 如何調試存儲過程有什麼好的工具嗎
1.打開PL/SQL Developer
如果在機器上安裝了PL/SQL Developer的話,打開PL/SQL Developer界面
輸入用戶名,密碼和host名字,這個跟在程序中web.config中配置的完全相同,點擊確定
找到需要調試的存儲過程所在的包(Package bodies),如PACK_ACTIVITY,點擊右鍵,在彈出菜單中選擇[查看],得到包中的所有存儲過程和他們的代碼.
2.添加debug信息
為了能夠單步跟蹤存儲過程,需要為其所在的包添加debug信息,右鍵點擊需要調試的包,在彈出菜單中選中[添加調試信息].
這樣就為包體添加了調試信息。
3.調試存儲過程
現在所有的准備工作都做好了,可以調試跟蹤存儲過程了。
③ vs中調用存儲過程的幾種辦法謝謝了,大神幫忙啊
一個不帶參數的簡單存儲過程。多數存儲過程的功能比本例復雜多了,但這里主要說明存儲過程的一些基本要點。如前面所述,不同DBMS定義存儲過程的語法是不同的。例如,有些DBMS使用begin . . . end或其他關鍵字指明存儲過程定義的開始和結束。在有些DBMS中,下面的SQL語句可創建一個存儲過程: create procere SHOW_SUPPLIERS as select SUPPLIERS.SUP_NAME, COFFEES.COF_NAME from SUPPLIERS, COFFEES where SUPPLIERS.SUP_ID = COFFEES.SUP_ID order by SUP_NAME 下面的代碼將SQL語句放到一個字元串中,然後賦給變數createProcere以備後用: String createProcere = "create procere SHOW_SUPPLIERS " + "as " + "select SUPPLIERS.SUP_NAME, COFFEES.COF_NAME " + "from SUPPLIERS, COFFEES " + "where SUPPLIERS.SUP_ID = COFFEES.SUP_ID " + "order by SUP_NAME"; 下面的代碼段使用Connection對象con來創建Statement對象,用於把創建存儲過程的SQL語句發送給資料庫: Statement stmt = con.createStatement(); stmt.executeUpdate(createProcere); 存儲過程SHOW_SUPPLIERS將作為一個可調用的資料庫對象在資料庫中編譯並存儲,調用時就像調用其他方法一樣。
④ 用VS2003調試項目的時候報 找不到存儲過程 'sp_sdidebug'。 但是我用的是SQL語句
sp_sdidebug這個擴展存儲過程是應用在調試時應用的存儲過程,在查詢分析器里做SQL調試有個前提就是要確保具有執行
sp_sdidebug擴展過程的許可權。所以找不到這個存儲過程不是說你是否用的是sql語句還是存儲過程,因為這是sql資料庫本身就有的,這一般都是資料庫裡面的問題
解決這個問題的解決方法
1、在SQL
SERVER里找到該擴展存儲過程,屬性,許可權,找到.net應用的資料庫用戶授予exec許可權即可。
⑤ vs怎麼調用sql資料庫的儲存過程
using (OracleConnection conn = new OracleConnection(connstring))
{
conn.Open();
OracleCommand cmd = new OracleCommand("p_wmb_querypoint", conn);
cmd.CommandType = CommandType.StoredProcere;
OracleParameter inp1 = new OracleParameter("i_usercode", OracleType.VarChar, 20);
//inp1.Direction = System.Data.ParameterDirection.Input;
inp1.Value = usercode;
cmd.Parameters.Add(inp1);
OracleParameter inp2 = new OracleParameter("i_team", OracleType.VarChar, 30);
//inp2.Direction = System.Data.ParameterDirection.Input;
inp2.Value = username;
cmd.Parameters.Add(inp2);
OracleParameter p2 = new OracleParameter("o_sumpoint", OracleType.Number);
p2.Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add(p2);
OracleParameter p3 = new OracleParameter("o_teampm", OracleType.Number);
p2.Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add(p3);
OracleParameter p4 = new OracleParameter("o_totalpm", OracleType.Number);
p4.Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add(p4);
OracleParameter p1 = new OracleParameter("o_cursor", OracleType.Cursor);
p1.Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add(p1);
cmd.ExecuteNonQuery();
sumpoint = int.Parse(cmd.Parameters[2].Value.ToString());
teampm = int.Parse(cmd.Parameters[3].Value.ToString());
totalpm = int.Parse(cmd.Parameters[4].Value.ToString());
OracleDataReader reader = (OracleDataReader)cmd.Parameters[5].Value;
sumpoint1 = sumpoint;
teampm1 = teampm;
totalpm1 = totalpm;
reader1 = reader;
//OracleDataAdapter da = new OracleDataAdapter(cmd);
//DataTable dt = new DataTable();
//da.Fill(dt);
//return dt;
}
把oracle改成sql就行了
⑥ 如何調試存儲過程
與其他編程語言中的調試一樣,您可以在調試 Transact-SQL 腳本的同時查看和修改局部變數和參數、查看全局變數以及控制和管理斷點。本示例說明如何通過單步執行創建和調試 Transact-SQL 存儲過程。 警告: 以下過程將使用在連接的資料庫開發和面向項目的離線資料庫開發這兩節中的過程中創建的實體。 調試存儲過程在「解決方案資源管理器」中,右鍵單擊 TradeDev 項目,選擇「添加」,然後選擇「存儲過程」。將這個新的存儲過程命名為 AddProct,然後單擊「添加」。將以下代碼粘貼到該存儲過程中。 CREATE PROCEDURE [dbo].[AddProct] @id int, @name nvarchar(128) AS INSERT INTO [dbo].[Proct] (Id, Name) VALUES (@id, @name) 按F5 生成和部署該項目。在SQL Server 對象資源管理器的「本地」節點下,右鍵單擊 TradeDev 資料庫,然後選擇「新建查詢」。將下面的代碼粘貼到查詢窗口中。 EXEC [dbo].[AddProct] 50, N'Contoso'; GO 單擊左窗口邊距以便向 EXEC 語句添加斷點。按下Transact-SQL 編輯器工具欄中的綠色箭頭按鈕上的下拉箭頭,然後選擇「使用調試器執行」,以便使用調試執行查詢。或者,也可以從SQL Server 對象資源管理器啟動調試功能。右鍵單擊 AddProct 存儲過程(位於 Local -> TradeDev database -> Programmability -> Stored Proceres 下)。選擇「調試過程...」。如果對象需要參數,則會出現「調試過程」對話框,顯示一個包含各個參數行的表。表中的每一行都包含參數名稱列和參數值列。輸入各個參數的值,再單擊「確定」。請確保「本地」窗口打開。如果未打開,則單擊「調試」菜單,選擇「窗口」和「本地」。按F11 鍵逐行執行該查詢。請注意,存儲過程參數和它們各自的值將顯示在「本地」窗口中。或者,將滑鼠指針懸停在 INSERT 子句中的 @name 參數上方,您將看到要傳遞給它的 Contoso 值。在文本框中單擊 Contoso。鍵入 Fabrikam,然後按下 ENTER 以便在調試時更改 name 變數的值。還可以在「本地」窗口中更改其值。請注意,該參數的值現在顯示為紅色,表示它已經更改。按F10 鍵逐行執行其餘代碼。在SQL Server 對象資源管理器中,刷新 TradeDev 資料庫節點以查看 Proct 表的數據視圖中的新內容。在SQL Server 對象資源管理器中的「本地」節點下,找到 TradeDev 資料庫的 Proct 表。右鍵單擊 Proct 表,然後選擇「查看數據」。請注意,新行已添加到該資料庫中。
⑦ 如何調試存儲過程和package
1.打開PL/SQL Developer
如果在機器上安裝了PL/SQL Developer的話,打開PL/SQL Developer界面
輸入用戶名,密碼和host名字,這個跟在程序中web.config中配置的完全相同,點擊確定
找到需要調試的存儲過程所在的包(Package bodies),如PACK_ACTIVITY,點擊右鍵,在彈出菜單中選擇[查看],得到包中的所有存儲過程和他們的代碼.
2.添加debug信息
為了能夠單步跟蹤存儲過程,需要為其所在的包添加debug信息,右鍵點擊需要調試的包,在彈出菜單中選中[添加調試信息].
這樣就為包體添加了調試信息。
3.調試存儲過程
現在所有的准備工作都做好了,可以調試跟蹤存儲過程了。
選擇需要調試的存儲過程,點擊右鍵,在彈出菜單中選擇[測試],進去測試窗口. 測試窗口中有為了測試該存儲過程自動所產生的代碼,當然你也可以自己另外加入和修改代碼,對於我們目前只是為了調試存儲過程,自動生成的代碼已經足夠了。接著按照如下的步驟進行調試。
(1)添加存儲過程所需要的參數,我們項目中的大多數存儲過程都是需要參數的,參數可以在測試窗口右下部分輸入。
如:GetPanNO_New需要一個輸入參數v_employeeid,我們輸入180,輸出參數是mycursor,是查看結果的,不需要輸入任何值。
(2)開始調試,點擊[調試]菜單-[開始](或者按F9),就進去調試模式了,程序開始停在begin這一行.
(3)以後的調試過程跟我們熟悉的的調試過程就一樣了:
運行(Ctrl+R)
單步進入(Ctrl+N)
單步跳過(Ctrl+O)
單步退出(Ctrl+T)
或者點擊debug工具條上的按扭: 當按Ctrl+N進去存儲過程的源代碼中後
在這個窗口中可以查看過程中的變數值和堆棧。
(4)調試運行完了後,可以查看結果如下(點擊mycursor變數旁邊的按鈕).