當前位置:首頁 » 編程語言 » sqllike參數化

sqllike參數化

發布時間: 2022-07-31 13:32:57

A. mysql里 select * from table where title like 『%a%』的參數化查詢怎麼寫

在zendframework的model層你可以這么寫
$sql = $this->select()->where("title like ? ", "%t%");
$rs = $this->fetchAll($sql);
要不你就直接寫
$sql = "select * from table where title like '%t%' ";
$rs = mysql_fetch_object($sql);
你也可以嘗試替換字元串
$sql = "select * from table where title like '?' "
$sql = str_replace('?', '%t%', $sql)

B. SQL中like里怎麼使用輸入參數

SQL like 需要配合通配符使用。

sql 中的通配符有。


以table_a中的 a 列,來舉例


select * from table_a where a like "a%"

--檢索a列 以 "a"開頭的記錄

select * from table_a where a like "%a"

--檢索a列以 "a"結尾的記錄

select * from table_a where a like "%a%"

--檢索a列字元中包含「a」的記錄

select * from table_a where a like "___"

--檢索 a列 只有3個字元的記錄

select * from table_a where a like "_a"

--檢索a列 只有2個字元,且第二個字元為 「a」的記錄

select * from table_a where a like '[abc]%'

--檢索a列 以 "a","b","C" 開頭的記錄

select * from table_a where a like '[!abc]%'

--檢索a列 不以 "a","b","C" 開頭的記錄

C. sql帶參數like語句怎麼寫

參考下邊寫法
SELECT [ID], [TypeName] FROM [CompanyType] WHERE ([TypeName] like "% '@TypeName'%")

D. sql 語句like後面的參數是什麼意思

like 後面的參數
%代表任意多個字元,
_代表任意的字元(一個);
例如:
select * from class student where name like '王%';
--就是從學生表中取出王姓的同學記錄;
select * from student where name like'_佳欣';
--就是從學生表中取出叫佳欣的同學,不管他姓什麼;
就你的這條SQL語句,含義同
select xmname,cardid,kkhcode,kkhname,ljxfe,jifen,dzdh,callnum,fkrq,zjm
from cgdd.dbo.lscard_wh
where kkhcode lik '%%' or kkhname like '%%'
or zjm like '%%'
是從資料庫中檢索出所有數據. . . . .

E. sql為什麼要參數化,怎麼參數化

一、最主要是: 資料庫 機制問題,參數化 可以加快 執行效率,資料庫有個緩存區,可以緩存 非參數部分的語句(或者說 下次執行不用資料庫再次 解析語句),而不用參數,每次資料庫 都需要解析 語句
二、次要是:防止,sql語句特殊字,注入:減少,字元轉義等
三、清晰 便於理解

F. sql怎麼使用參數化

採用sp_executesql 系統存儲過程,執行sql語句,就能傳入參數,

這就是sql參數化sql腳本參數化

你可以根據上面的例子,將sql腳本中定義參數,然後後面賦值參數變數,

在查詢分析器中執行,你就可以知道sql參數化的具體實現和概念了。

如有疑問,請及時溝通!

請採納!

G. 如何在LIKE語句中使用參數,以及動態執行SQL語句

拼SQL的方法不好,因為有安全的風險,容易造成SQL的語法錯誤甚至SQL注入攻擊。安全的方法是將'%'加入到參數中:

--查詢圖書表中與查詢關鍵字匹配的書籍信息
ALTER PROCEDURE [dbo].[SP_SelectByKeywordProc]
(
@Keyword varchar(40)
)
AS
BEGIN
DECLARE @SqlString nvarchar(400);
SET @SqlString = N'SELECT * FROM BOOK WHERE BOOK_NAME LIKE @Key_word ';
SET @KeyWord = N'%' + Keyword + '%';

EXEC SP_EXECUTESQL @SqlString, N'@Key_word varchar(40)', @Key_word= @KeyWord;
RETURN(0);
END

這里還要注意帶參數的SP_EXECUTESQL系統存儲過程的使用方法:
1、前兩句為字元串,其中第一句為執行的SQL語句;第二句為語句中參數的定義,如果有多個變數則用逗號分隔;
2、後面的子句為賦值語句,可以有多個;
3、執行的動態SQL語句應當為ntext/nchar/nvarchar型,否則會報錯:「Procere expects parameter '@statement' of type 'ntext/nchar/nvarchar'.」

MSDN上的例子:
DECLARE @IntVariable int;
DECLARE @SQLString nvarchar(500);
DECLARE @ParmDefinition nvarchar(500);
DECLARE @max_title varchar(30);

SET @IntVariable = 197;
SET @SQLString = N'SELECT @max_titleOUT = max(Title)
FROM AdventureWorks.HumanResources.Employee
WHERE ManagerID = @level';
SET @ParmDefinition = N'@level tinyint, @max_titleOUT varchar(30) OUTPUT';

EXECUTE sp_executesql @SQLString, @ParmDefinition, @level = @IntVariable, @max_titleOUT=@max_title OUTPUT;

H. C#中 SQL語句 帶參數的like 查詢怎麼寫

SQL模糊查詢,使用like比較字,加上SQL里的通配符,請參考以下:
-- 1、LIKE'Mc%' 將搜索以字母 Mc 開頭的所有字元串(如 McBadden)。
-- 2、LIKE'%inger' 將搜索以字母 inger 結尾的所有字元串(如 Ringer、Stringer)。
-- 3、LIKE'%en%' 將搜索在任何位置包含字母 en 的所有字元串(如 Bennet、Green、McBadden)。
-- 4、LIKE'_heryl' 將搜索以字母 heryl 結尾的所有六個字母的名稱(如 Cheryl、Sheryl)。
-- 5、LIKE'[CK]ars[eo]n' 將搜索下列字元串:Carsen、Karsen、Carson 和 Karson(如 Carson)。
-- 6、LIKE'[M-Z]inger' 將搜索以字元串 inger 結尾、以從 M 到 Z 的任何單個字母開頭的所有名稱(如 Ringer)。
-- 7、LIKE'M[^c]%' 將搜索以字母 M 開頭,並且第二個字母不是 c 的所有名稱(如MacFeather)。

熱點內容
微信提示存儲空間不足 發布:2025-01-24 01:19:53 瀏覽:963
安卓電腦管家如何清除緩存 發布:2025-01-24 00:55:42 瀏覽:148
怎麼上傳歌曲到qq音樂 發布:2025-01-24 00:45:30 瀏覽:65
養貓用什麼配置 發布:2025-01-24 00:37:58 瀏覽:812
pythongps 發布:2025-01-24 00:37:51 瀏覽:813
辦公編程滑鼠 發布:2025-01-24 00:37:07 瀏覽:386
wpa加密類型 發布:2025-01-24 00:35:58 瀏覽:960
如何用批處理實現ftp映射盤符 發布:2025-01-24 00:25:45 瀏覽:954
win7sql版本 發布:2025-01-24 00:22:16 瀏覽:499
安卓手機市場有什麼 發布:2025-01-23 23:48:56 瀏覽:26