1. sql 刪除語句 返回值
樓主確定這段代碼沒問題嗎?SqlHelper.ExecuteSqlGet返回值是影響的記錄數,當操作失敗時,返回null。
/// <summary>
/// 執行帶一個存儲過程參數的的SQL語句。
/// </summary>
/// <param name="SQLString">SQL語句</param>
/// <param name="content">參數內容,比如一個欄位是格式復雜的文章,有特殊符號,可以通過這個方式添加</param>
/// <returns>影響的記錄數</returns>
public static object ExecuteSqlGet(string SQLString, string content)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand(SQLString, connection);
System.Data.SqlClient.SqlParameter myParameter = new System.Data.SqlClient.SqlParameter("@content", SqlDbType.NText);
myParameter.Value = content;
cmd.Parameters.Add(myParameter);
try
{
connection.Open();
object obj = cmd.ExecuteScalar();
if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))
{
return null;
}
else
{
return obj;
}
}
catch (System.Data.SqlClient.SqlException e)
{
throw e;
}
finally
{
cmd.Dispose();
connection.Close();
}
}
}
2. ExecuteQuery(sql)的返回值
返回包含給定查詢所生成數據的 ResultSet 對象;永遠不能為 null,如果沒有查詢到信息,返回一個next()為false的ResultSet 對象
3. sql 條件判斷的返回值
/*
sql 條件對比的返回值是什麼呢?
*/
IF 1=1 SELECT 'OK'
--SQL條件判斷返回布爾值,但SQL布爾值沒有常量true/false來表示,因此:
--true -> 1=1
--false -> 1=0
4. sql動態查詢返回值的意義是什麼呢
@name只是返回一個標量值,它的有無並不影響sp那個擴展存儲過程的執行
如果你這個執行後,無論是否得到一個表集,都會將@name這個標量值輸出
當然需要在程序中額外的方法接收
當然如果你不想用這種方式,你就想用表集的形式接收也可以
sql語句拼接時,直接select name from即可,最後一句select @out_name去掉就可以了
沒有@name變數,相應的接收變數@out_name都去掉就好
這個sp_executesql存儲過程的輸出參數主要是為了解決拼接sql語句時,不能將拼接為字元的變數定義或輸出到外面的問題,舉個簡單的例子
比如你要查詢一個表的數量,那麼where條件是動態的,這時就必須使用動態拼接sql語句
而查詢得到的這個數量你需要賦值到一個變數中,用來進一步的計算或使用
這時,你用exec 執行的結果如何賦值到變數中呢?答案就是圖中所示的方法
5. sql語句求詳細解釋
確認是datalength而不是len?
其實你只要明白了每一個函數的含義,語句你就明白了。
datalength('我123')
返回值是5
函數返回的是字元串的位元組數
substring('abcdefg',2,3)
返回值是『bcd』
截取字元串,從字元串中第2個字元開始,截取長度為3的字元串
left('abcdefg',4)
返回值是『abcd』
截取字元串,從左側第1個字元開始截取長度為4的字元串
patindex
模糊查找第一次出現該模式的位置,稍復雜,其實和charindex功能一樣,只不過charindex查找指定的字元串,patindex可以加入通配符,簡單可以這么理解
語句理解
首先語句可以精簡為
update
springer
set
內容提要=
left(內容提要,patindex('%right%',內容提要))
where
(內容提要
like
'%right%')
本人實在是沒看出來substring(內容提要,
1,
datalength(內容提要))和
內容提要
本身有什麼區別(如果不同,請賜教,真心沒看出來)
其實patindex('%right%',內容提要)也完全可以用charindex('right',內容提要)替代。
精簡完後,樓主應該可以看懂了吧
6. 如何判定這條sql語句的返回值
<%
sql = "select max(tptime) as onw from tpip where ip ='127.0.01' and id=12"
set rs = conn.execute(sql)
if isnull(rs("onw")) then
response.Write("沒有對應的tptime")
else
response.Write("id為12,ip為127.0.01的最晚tptime是" & rs("onw"))
end
set rs = nothing
%>
假設conn是已經定義的數據連接
7. executeUpdate(sql) 返回值是什麼
executeUpdate(sql) 的返回值是一個整數(int)。
當executeUpdate(sql)是INSERT、UPDATE 或 DELETE 語句時,返回的是受影響的行數(即更新的行數)。
當executeUpdate(sql)是CREATE TABLE 或 DROP TABLE 等不操作行的語句,executeUpdate 的返回值是零。
(7)sql返回值解釋擴展閱讀
executeUpdate(sql)的用法介紹:
用於執行 INSERT、UPDATE 或 DELETE 語句以及 SQL DDL(數據定義語言)語句,例如 CREATE TABLE 和 DROP TABLE。INSERT、UPDATE 或 DELETE 語句的效果是修改表中零行或多行中的一列或多列。例如:
//載入資料庫驅動
Class.forName("com.mysql.jdbc.Driver");
//使用DriverManager獲取資料庫連接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","1234");
//使用Connection來創建一個Statment對象
Statement stmt = conn.createStatement();
//執行DML語句,返回受影響的記錄條數
return stmt.executeUpdate(sql);
8. 請教 sql 返回值
存儲過程中可以直接返回這個值
===============
就是把這個語句放在存儲過程中執行呀。不同的資料庫可以得不同的寫,上網查下吧。
------------------------
不想寫存儲過程的話,也可以試著插入數據後,再讀取最後一條記錄
select top 1 id from X order by X desc 用降序讀取最後一條記錄的id
-------------------
或讀取最大值
select max(id) from table
9. SQL返回值問題
這個值是你以經插入完成了才有的,所有你在從庫中讀出這一條數據,然後得到編號那一列的值就可以 了
10. sql語句執行成功返回什麼
SQL語句返回的結果是一個集合,是所有查詢到的數據的結合,沒有數據時是一個空集合。
但是各語言的SQL函數結果就不是了,一般返回一個資源句柄,看你說的什麼語言。
補充:
暈死,至今你都不說你這是INFORMIX,幸好我看見SQLCA很面熟,否則大家如何回答你的問題,誰都以為你說的是MS SQL。
SQLCA是資料庫操作之後都會更新,0表示成功,其它數字為錯誤代碼。