我用c做管理系統 資料庫方面是用儲存過程好呢,還是用SQL查詢語句好呢?兩者有什麼區別,要詳細過程

時間 2022-04-22 22:10:02

1樓:冷冷

儘量用儲存過程好些,因為儲存過程比後臺查詢更安全,畢竟是在sql端執行,可以有效避免sql注入的危險,而且效率也會高些.

區別麼,直接sql查詢的話需要執行的時候是需要提交sql語句,查詢後返回進行邏輯操作.儲存過程直接請求資料庫,把敏感的邏輯寫在儲存過程中,安全,便捷,使後臺**更整潔.

但是不是所有的東西都適合放儲存過程中,簡單的邏輯判斷什麼的就沒必要了

2樓:匿名使用者

儲存過程優點:當業務需求更改時只要改一個儲存過程就能夠滿足業務的需求,儲存過程處理資料量 上千萬比較好,用sql語句速度太忙。

sql查詢語句,如果業務需要比較複雜 那麼sql語句就會很長,不方便修改

3樓:匿名使用者

儲存過程和sql語句其實都可以達到目的。

儲存過程是寫在資料庫裡面的。所以要改變查詢結果是不需要修改程式的。直接修改儲存過程就可了。

sql語句是寫在程式中。要修改查詢結果就要修改程式了。

4樓:匿名使用者

儲存過程速度會快,sql語句會慢一點

因為儲存過程是編譯好了 直接執行

但是sql語句還是會再編譯一次,再執行!

是用儲存過程快,還是c#sql語句快

5樓:

1.儲存過程編譯器事先對儲存過程金星了語法檢查處理,避免了因sql語句語法不正確引起執行時出現異常的問題. 2.

只在儲存儲存過程時資料庫伺服器才進行編譯,以後每次執行儲存過程都不需要再進行重新編譯而一般的sql語句每執行一次就需要資料庫引擎

資料庫操作,是用儲存過程好,還是直接程式裡拼sql語句好?

6樓:匿名使用者

儲存過程可控(其實就是你想增刪一個條件的話,比較簡單)好修改(只需要修改儲存過程就行了,聯調也比較簡單)好除錯(僅僅除錯儲存過程比拼語句簡單多了)也有不好,比如可能喲點延長系統響應時間。(畢竟隔了一層)如果儲存過程失效,那麼該儲存過程的其他部分也不能用了。

總結起來其實就是相對簡單,好除錯,但是也有一點風險。

儲存過程和sql語句有什麼區別

7樓:碧燎伯醉柳

1、sql只能實現簡單的查詢,新增,修改,刪除功能。

2、儲存過程是sql語句和可選控制流語句的預編譯集合。儲存過程在建立時即在伺服器上進行編譯,所以執行起來比單個sql語句快。在單個儲存過程中可以執行一系列sql語句。

可以從自己的儲存過程內引用其他儲存過程。

8樓:

儲存過程就是將多個t-sql語句集合在一起,完成一定功能的子程式,供需要的時候呼叫。

9樓:夢菊晶瑩雪

儲存過程是在大型資料庫系統中,一組為了完成特定功能的sql 語句集,經編譯後儲存在資料庫中,使用者通過指定儲存過程的名字並給出引數(如果該儲存過程帶有引數)來執行它。

sql語句是用於查詢

10樓:匿名使用者

sql只能實現簡單的查詢、新增、修改、刪除功能。

儲存過程由多個sql組成,可以包含複雜的邏輯。

11樓:匿名使用者

儲存過程是一句或一組sql語句,常用來完成資料的自動計算、轉換等功能

在c#中如何對sql server資料庫進行多表查詢的結果顯示在窗體上

12樓:

多表關聯查詢與單邊查詢,對前臺來說,都只是一個資料集(dataset)

連線字串的寫法:

string connectstring = "data source=.;initial catalog=student;integrated security=true";

sqlconnection物件:

sqlconnection sqlcnt = new sqlconnection(connectstring);

sqlcnt.open();sqlcnt.close();

名稱空間:system.data.sqlclient.sqlconnection;

返回資料庫連線物件,引數字串。例項化「連線物件」,並開啟連線

使用完成後,需要關閉「連線物件」

sqlcommand command = new sqlcommand();

command.connection = sqlcnt;            // 繫結sqlconnection物件

例項化一個sqlcommand物件

執行sqlsqlcommand cmd = conn.createcommand();              //建立sqlcommand物件

cmd.commandtype = commandtype.text;

cmd.commandtext = "select * from products = @id";   //sql語句 可以單表也可以多表關聯,

cmd.parameters.add("@id", sqldbtype.int);

cmd.parameters["@id"].value = 1;                    //給引數sql語句的引數賦值

sqlcommand cmd = conn.createcommand();

cmd.commandtype = system.data.commandtype.storedprocedure;

cmd.commandtext = "儲存過程名";

13樓:匿名使用者

用儲存過程啊,或者檢視多方便,聯合查詢就是拼sql語句 容易出亂

14樓:

sqldatabulider

資料庫怎麼用,怎麼做資料庫?

資料庫一般包含表,項等部分。現在流行的使用sqlserver和oracle等。學這個先從學習sql語句學起,大致最基本是 增,刪,改,查 4個基本設定。他們都有圖形介面的操作,本人認為初中畢業的文化水平就可以學會。中專水平就可以維護企業資料庫了。微軟系統,就先練sqlserver吧,很容易。orac...

請問用c 如何連線mysql 資料庫 是連線網上的mysq

使用mysql開發包,在mysql安裝目錄裡面有一個include目錄。裡面包含了需要的c 標頭檔案 主要包含 include include 根據自己目錄設定mysql標頭檔案 mysql mysql std string db host 127.0.0.1 mysql伺服器地址 std stri...

用java做介面連線oracle資料庫實現增刪改查功能,具體步驟怎麼做

超級電影說 如果不用orm框架,那麼直接引入ojdbc6.jar 驅動包,然後在 中jdbc配置 然後可以使用jdbc實現增刪改查,比如下面 resultset rs null statement stmt null connection conn null try catch classnotfo...