作者corn456789 (玉米)
看板Database
標題[SQL ] SQL SERVER STORED PROCEDURE
時間Wed Sep 16 17:21:37 2015
資料庫名稱:SQL SERVER
資料庫版本:SQL SERVER 2008 R2
內容/問題描述:
小弟我最近正在寫ASPX和SQL SERVER,
但不知道為甚麼想要把TXTBOX上面的值透過STORED PROCEDURE傳入SQL SERVER
就一直無法,每次都會出現"無法找到預存程序(STORED PROCEDURE)",讓我困擾很久
我自己這邊有些想法:
1.對應STORED PROCEDURE參數的部分(這邊我有確認過)
PS:應該是對應STORED PROCEDURE一開始那些@XXX int @XXX varchar(10)
2.資料庫裡面有沒有存放STORED PROCEDURE
PS:這裡我比較好奇,是要存放建立資料表的STORED PROCEDURE 還是ALTER(查詢)的也要?
3.與資料庫連線
PS:這個部份我反而還比較確定,從web.config下手改,就可以了
4.呼叫STOTRED PROCEDURE的名字
PS: EX:ALTER PROCEDURE [dbo].[XXX]呼叫的時候,應該是"dbo.XXX"這樣吧?
關於錯誤訊息:
找不到預存程序 'dbo.XXX'。
描述: 在執行目前 Web 要求的過程中發生未處理的例外狀況。請檢閱堆疊追蹤以取得錯
誤的詳細資訊,以及在程式碼中產生的位置。
例外狀況詳細資訊: System.Data.SqlClient.SqlException: 找不到預存程序 'dbo.XXX'
。
原始程式錯誤:
行 79: cmd.ExecuteScalar();
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.60.182.133
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1442395300.A.25D.html
推 shadow0828: EXEC procedure名稱 再測試看看 09/16 17:35
→ YaMeiLo: 檢查一下有沒有選對資料庫 09/17 07:15
推 Ammenze: 預存程式名稱應該不需要加dbo. 09/17 11:01
→ corn456789: 我剛剛用了EXEC procedure 顯示無stored procedure 09/17 12:03
→ corn456789: 請問一下那要如何在資料庫存procedure 讓我可以EXEC到 09/17 12:04
→ retsamsu: 這個procedure是在哪個DB? 09/18 15:50
→ retsamsu: exec dbname.dbo.procedure 09/18 15:50
→ tedcat: 你的連線預設db有設正確嗎? 09/19 08:47
→ shadow0828: 選對資料庫 09/19 13:50
→ corn456789: 謝謝各位大大,我發現我真的沒procedure放進資料庫.. 09/21 08:43