0
我一直在尋找解決方案,適用於我的情況。我發現了一些非常相似的東西,但不適合我的情況,我嘗試了它們。SQL語句中用於列名的參數的用例語句where子句
這是場景;我有兩個桌子底座和部分細節。我有一個asp網站(僅限內部),它具有下拉列表以選擇填充數據網格視圖的SQL查詢的參數。
我的問題是這樣的,我需要能夠,基於頁面上的下拉列表框,分配列名稱,輸入要搜索的條件。
這裏是我試圖定義查詢:(這一次返回0行)
sqlCmd.CommandText = ("Select ba.referenceid, ba.partnum, pd.width, pd.length, CONVERT(varchar(12), pd.dateentered, 101) As [dateentered], ba.partqty, ba.status, ba.material From tbl_dlbase ba Join tbl_partdetails pd On ba.referenceid = pd.referenceid Where Case @field1 When 'part #' Then 'ba.partnum' When 'Spacing' Then 'pd.spacing' When 'Surface' Then 'pd.surface' When 'Height' Then 'pd.height' When 'Thickness' Then 'pd.thickness' End Like '%' + @criteria1 + '%'")
sqlCmd.Parameters.AddWithValue("@field1", ddlSc1.SelectedItem.Text)
sqlCmd.Parameters.AddWithValue("@criteria1", txbCriteria1.Text)
這是我已經試過SQL語句的最新版本。我需要能夠根據asp頁面上的下拉列表ddlsc1中的選擇來設置字段/列名稱。
我也一直試圖在Studio管理器中查詢是否可能我有脂肪指尖的東西,但它也返回0行,所以我知道查詢有問題。
那麼如何使用名稱參數設置列名稱字段。我知道這對於SQL注入來說是一個巨大的安全問題,但這是一個內部唯一的站點,更重要的是,我的老闆說他希望用變量來完成。
我認爲這是動態的,因爲我使用變量名稱。什麼是動態SQL呢? – mbcharney
你不需要動態在這裏,從你當前的查詢看起來我不認爲你知道你需要什麼。 – Codexer
「*我一直在尋找適合自己情況的解決方案,我發現了一些非常相似的東西,但不適合我的情況,我試了一下。」呃,如果這是真的,好像你已經知道什麼是動態SQL(這是在互聯網上的一個非常常見的請求)。請告訴我們你已經嘗試過的「不適合我的情況」。 – RBarryYoung