當前位置:首頁 » 編程語言 » 變數sql問題
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

變數sql問題

發布時間: 2022-09-11 03:50:22

1. sql變數問題

declare @s varchar(100),
@s1 varchar(100),
@s2 varchar(100)
select @s='dsfsd',
@s1='dsfsd',
@s2='dsfsd'
將這段加到前面

2. 用變數做SQL查詢語句中的where條件時出現的錯誤

1、SELTCT--SELECT
2、order是資料庫關鍵字,如果做表名要[order]中括弧括起來
你把拼接完最後執行的sql語句print出來,去執行下比較容易看出錯誤

3. sql變數問題

肯定不是啊。。
如果你給同一個變數進行多次賦值,那這個變數的值就是最後一個值。
變數它的值是會變的。也就是可以改的嘛

4. SQL自定義變數問題

declare@PRDT_Bvarchar(20),@PRDT_Evarchar(20)--定義變數
set@PRDT_B=:PRDT_B!貨號--賦值
if(@PRDT_B='')--條件當@PRDT_B值為空時
set@PRDT_B=(selectmin(prd_no)fromprdt)--從表prdt里查詢出最小的prd_no的值來賦值

5. 關於SQL語句中使用變數的問題

插入進去的數據的類型不匹配. 以int型和nvarchar型為例,其他的像日期型的你自己發揮.

問:
存儲過程這樣的:
CREATE PROCEDURE insertxuesheng @xuehao int,@xingming varchar,@banji varchar,@zhuanye varchar,@nianling int,@xingbie varchar AS
insert 學生(學號,姓名,班級,專業,年齡,性別) values(@xuehao,@xingming,@banji,@zhuanye,@nianling,@xingbie)
代碼這樣的:
SqlCommand cmd = new SqlCommand("insertxuesheng", conn);
cmd.CommandType = CommandType.StoredProcere;
cmd.Parameters.AddWithValue("@xuehao", TextBox1.Text);
cmd.Parameters.AddWithValue("@xingming",TextBox2.Text);
cmd.Parameters.AddWithValue("@banji", TextBox3.Text);
cmd.Parameters.AddWithValue("@zhuanye", TextBox4.Text);
cmd.Parameters.AddWithValue("@nianling", TextBox5.Text);
cmd.Parameters.AddWithValue("@xingbie", TextBox6.Text);
cmd.ExecuteNonQuery();

插入數據後我去看資料庫里的表,發現只有學號和年齡有數據,其他都是空值,怎麼回事

答:
傳入的數據類型不對.

因為學號和年齡是int型,所以傳入TextBoxN.Text可以. 因為這時TextBoxN.Text = " 123", 實際上的SQL語句中就是:xuehao=123

而針對其他的欄位,則都是字元型的,因此 在SQL語句中應該是: xingming = 'abc' .

而:cmd.Parameters.AddWithValue("@xingming",TextBox2.Text);
執行的結果是: xingming=abc.這當然就不行啦.

所以改為: cmd.Parameters.AddWithValue("@xingming","'" + TextBox2.Text + "'"); 就是給TextBoxN.Text前後各加一個引號再傳給存儲過程.

6. SQL 變數執行的問題

將EXEC ( 'SELECT * FROM Person.Person WHERE FirstName = ' + @OutVar);
改為
EXEC ( 'SELECT * FROM Person.Person WHERE FirstName = ''' + @OutVar + '''');
因為firstname是字元型的,所以你要加引號。

7. 請教perl中sql語句里使用變數問題

可以在sql裡面使用變數的。如果你的變數裡面含有一些特殊的轉義字元,請使用DBI模塊的quote功能;如果變數裡面不含一些特殊的轉義字元,則在sql語句裡面直接用單引號即可。

8. php中sql語句帶變數的問題

不行的,變數是要加大括弧的,或者使用字元串連接符連接2個字元串。
1如果你的$meal是一個變數、mealnum是字元型的數據的列,就這樣寫:
$result
=
mysql_query("select
*
from
{$res}
where
mealnum=『{$meal}』");
2如果你的$meal是一個變數、mealnum是數字型的數據的列,就這樣寫:
$result
=
mysql_query("select
*
from
{$res}
where
mealnum={$meal}");注意大括弧外沒單引號。
3如果你的$meal就職一個字元串、mealnum是字元型的數據的列,就這樣寫:
$result
=
mysql_query("select
*
from
{$res}
where
mealnum=『\$meal』");
4如果你的$meal就職一個字元串、mealnum是數字型的數據的列,那麼就會錯誤了;
另外:
你已經說了$meal是一個字元型,所以就必須加兩個單引號,如果是數字型就不需要單引號。

9. sql語句中變數與字元串連接問題

那要看你使用的是什麼樣的sql系統,如果使用的是標準的sql,一般可以這樣寫:
update
char
set
name=concat(name,"abc")
where
id=1;
這里要注意的是:concat是標準的字元串連接函數,你要保證你name屬性的數據類型是字元串型的,還有,根據你使用的系統,決定引用字元串時是使用單引號還是雙引號;如果你使用的系統是mysql,mssql或者其他的sql,一般還有對應的更加簡潔的表達式。
還有,在有的sql系統里,你上面的表達式是可以使用的,只需把單引號換雙引號即可。