是否可以在簡單查詢中使用或添加參數而無需創建存儲過程或函數?沒有創建存儲過程,可能是Bind Variables?使用參數而不需要創建存儲過程
1
A
回答
2
你在哪裏運行該代碼?如果您使用Java/VB這樣的語言運行,那麼您將使用存儲過程或準備好的語句。
如果從使用SQL * Plus終端或其他SQL UI
SQL> variable deptno number
SQL> exec :deptno := 10
SQL> select * from
emp where deptno = :deptno;
從如Java或VB使用存儲過程高級語言,下面是從你的文章鏈接到所以不知道你爲什麼問這個?
其實這個答案其實很簡單。當你把 放在一起使用Java或VB或其他的SQL語句時,你通常使用一個API訪問數據庫; ADO在VB的情況下,JDBC在 的情況下是Java。所有這些API都內置了對綁定 變量的支持,它只是使用此支持而不是僅僅使用 將一個字符串連接起來並提交給數據庫。
例如,Java有PreparedStatement,它允許使用綁定 變量和Statement,它使用字符串連接 的方法。如果您使用支持綁定變量的方法,則API 本身會在運行時將綁定變量值傳遞給Oracle,而您只需按照正常方式提交SQL語句。沒有必要 分別將綁定變量值傳遞給Oracle,實際上沒有 您的部分工作。對綁定變量的支持不僅僅限於Oracle - 對於其他RDBMS平臺(如 Microsoft SQL Server)很常見,所以沒有理由不使用它們,因爲它們可能只是Oracle的一項功能。
不知道爲什麼你問因爲這些信息網站上有http://www.akadia.com/services/ora_bind_variables.html
1
那麼,假設你將使用外部編程語言執行查詢,準備好的語句將完成這項工作。
相關問題
- 1. 需要創建一個存儲過程
- 2. 調用的存儲過程需要從一個存儲的過程需要2個內部參數1參數
- 3. Visual C#中的存儲過程要求的參數不需要
- 4. 使用可變數量的參數創建存儲過程
- 5. 存儲過程需要參數雖然參數提供
- 6. 需要使用MySQL存儲過程
- 7. Visual Studio:使用多個存儲過程創建多值參數
- 8. 如何使用sqlserver中的參數創建存儲過程
- 9. 如何在存儲過程中使用RAISERROR創建參數?
- 10. SQL - 使用多個可選參數創建存儲過程
- 11. 如何使用Nvarchar(max)參數創建CLR存儲過程?
- 12. 使用存儲過程創建存儲過程
- 13. 需要在存儲過程
- 14. 在java存儲過程中需要用OUT參數爲MYSQL
- 15. 無過載需要0參數存儲過程
- 16. 使用存儲過程/函數創建數據庫,表,過程?
- 17. 存儲存儲過程的結果而不使用輸出參數
- 18. 需要定期刪除並重新創建存儲過程?
- 19. 需要幫助:爲批量插入創建存儲過程
- 20. 創建存儲過程,需要由公司ID
- 21. 創建存儲過程時需要「定義者」嗎?
- 22. 不能創建存儲過程表輸出參數
- 23. 使用變量創建存儲過程
- 24. 使用存儲過程創建表
- 25. TSQL創建存儲過程使用c#
- 26. 創建使用T-SQL存儲過程
- 27. 創建/使用存儲過程
- 28. 使用SQLAlchemy創建存儲過程
- 29. 使用MySQL創建MySQL存儲過程
- 30. 使用參數調用存儲過程