當前位置:首頁 » 編程語言 » 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;

熱點內容
腳本外掛科技 發布:2025-06-14 04:11:20 瀏覽:405
項目網源碼 發布:2025-06-14 04:09:09 瀏覽:375
怎麼把圖片弄成壓縮包 發布:2025-06-14 04:04:46 瀏覽:511
sqlexecsql語句 發布:2025-06-14 04:01:03 瀏覽:430
linux查看時區 發布:2025-06-14 03:54:46 瀏覽:362
奇跡mu掛機腳本 發布:2025-06-14 03:47:39 瀏覽:298
安卓特價機是什麼意思 發布:2025-06-14 03:46:11 瀏覽:342
我的世界伺服器怎麼設置玩家極限 發布:2025-06-14 03:40:25 瀏覽:488
書包上鎖忘記密碼如何知道原來的密碼 發布:2025-06-14 03:39:38 瀏覽:713
小程序客服源碼 發布:2025-06-14 03:29:35 瀏覽:353