當前位置:首頁 » 編程語言 » javasql引號

javasql引號

發布時間: 2025-06-13 05:27:17

① 怎麼加引號

不知道你用的是什麼語言。
假設你用的是jsp、c#、java或其他c語系的語言

String sql = "";//in java or jsp(string sql = "";//in c#)
sql = "delete from book where time <"+"2005-1-1";

如果你用的是asp、vb等b語系
只要把「+」號改成「&」就可以了。

具體的你可以去看看相關教程里的字元串拼接。

② 一個欄位多個字元串id 這樣查那邊沒有把 每個id 用雙引號包起來所以這樣in查詢查不到 請問怎麼解決

一、我在批量刪除中也遇到過這種問題,

1.之前我是這樣解決的:

select * from A where ID in (${IDS})

若ID全都是int型(Number),把前端每個ID通過逗號,連接傳過來是沒問題的,

裡面的ID若是字元串正如你所說,若還是這樣連傳進去(假設兩個ID 為"ab" "cd")

就會變成:

select * from A where ID in ("ab,cd")

這樣後台會報 ab is not a column 異常

2.然後我這樣解決:

它裡面缺"那就給它唄,在前端js就用","連起來

比如:

String IDS="";

String IDS = IDS +"""+ID+"""+",";這樣每個ID都會有被"包裹了,然後處理下後面的逗號就OK

二、但這樣是能解決的,但是用${}注入sql 是不安全的,最好是用#{},最後得用mybatis動態sql的 foreach方法。你可以自行網路

例子:

<delete id="delHosts" parameterType="java.util.List">
DELETE FROM A
<where>
ID IN
<foreach collection="list" item="item" separator=","
open="(" close=")" index="index">
#{item.ID}
</foreach>
</where>
</delete>

這個地方你傳進來的 類型是什麼 你的parameterType就得是什麼類型,多嘗試就好了

如果有幫助就點個贊吧,關注就更好了(●'◡'●)

③ oracle java.sql.SQLException: ORA-01756: 引號內的字元串沒有正確結束

create or replace
PROCEDURE GETEMAILS
(
e_username VARCHAR2,
e_getemails OUT p_getemails.getemails
) AS

BEGIN
open e_getemails FOR select * FROM e_user where username<>e_username;
END GETEMAILS;

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:593
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:888
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:582
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:765
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:684
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1013
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:255
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:114
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:806
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:713