簡體   English   中英

來自C#的SQL無服務器命令

[英]SQL serverless command from C#

我想知道是否可以在不連接數據庫實例的情況下在C#代碼中運行SQL命令。

例如,我想運行以下腳本:

SELECT 15/(3+2) AS RESULT

並獲得結果(3),而無需打開與實際SQL Server實例的連接。

更新:原始問題一小時后

我正在構建一個系統,該系統將根據用戶輸入來計算指標。 我正在搜索表達式評估器以計算結果(例如15 /(3 + 5)= 3或15/3 + 5 =8。我發現了很多,例如NCalc,mXparser等,但是有很多SQL(至少是SQL)服務器)具有NULLIFISNULL表達式,這將通過在分母為零時返回null或在分子的一個重要組成部分為null時返回null來幫助很多。

由於我將為用戶提供創建自己的指標的可能性,因此使用SQL語言進行授課將容易得多,因為用戶已經具有一定程度的SQL。

也許使用諸如SQL CESQLite類的輕量級嵌入式SQL引擎來評估您的select查詢?

您也可以直接在常規數據結構上直接使用LINQ來接近目標。

您可以使用數據表的計算方法。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim dt As New DataTable
    Dim result = dt.Compute("15/(3+2)", "0")
    MessageBox.Show(result.ToString)
End Sub

我想知道是否可以在不連接數據庫實例的情況下在C#代碼中運行SQL命令。

不,沒有。 導致您認為應該在哪里或針對哪個數據源執行查詢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM