⑴ 如何將sql server 中的欄位名定義為變數
不可以,列名、表名都不能用變數,可以通過拼接字元,然後用exec來執行 如,exec('update tb set '+列名變數+'='''+字元類的變數值+''' where 條件')
⑵ sqlserver中聲明變數並使用
你的問題出在對變數的賦值上了,應該用:SELECT @a=@@IDENTITY,
以下是我按你的要求做的例子,SQLServer 2008中測試正確:
Create Table login
(sId int IDENTITY PRIMARY KEY,
Name varchar(40) ,
Password varchar(40),
alevel varchar(40))
go
Create Table uninfo
(uid int)
go
declare @a INT
Insert Into login (Name,Password,alevel)
values (7,7,4)
Select * From login
SELECT @a=@@IDENTITY
insert into uninfo (uid) values (@a)
Select * From uninfo
go
drop table login
go
drop table uninfo
go
⑶ 一個關於sqlserver 的 sql語句帶image變數的問題
看下數據表裡面的FileByte是image類型嗎?如是int,改一下就行了
⑷ 請問在SQLserver 中如何指定一個資料庫類型的變數就是說裡面引用的表前的資料庫前綴可以像變數一樣改變
如果僅僅是 為了 指向一個 外部資料庫, 使用 資料庫 同義詞, 來作這個事情就好了.
下面的例子,就是 Test2 資料庫, 要訪問 Test 資料庫的一個表
默認的情況下,要 全名 Test.dbo.v_sale_report_sum
建立 同義詞, 可以簡化處理。
如果一定要按照樓主的那種處理方式, 那就只有用 動態SQL 來處理了。
1>
2> USE [Test2]
3> GO
已將資料庫上下文更改為 'Test2'。
1> SELECT * FROM Test.dbo.v_sale_report_sum;
2> go
sale_item sale_money
--------- ----------------------------------------
A 733285.00
C 5738.00
B 2382.00
(3 行受影響)
1> SELECT * FROM v_sale_report_sum;
2> go
消息 208,級別 16,狀態 1,伺服器 HOME-BED592453C\SQLEXPRESS,第 1 行
對象名 'v_sale_report_sum' 無效。
1> CREATE SYNONYM v_sale_report_sum
2> FOR Test.dbo.v_sale_report_sum;
3> go
1> SELECT * FROM v_sale_report_sum;
2> go
sale_item sale_money
--------- ----------------------------------------
A 733285.00
C 5738.00
B 2382.00
(3 行受影響)
⑸ SQLserver資料庫中的變數是什麼意思是干什麼用的,詳細的講解一下!謝謝
資料庫中有變數嗎??你說的應該是Sql文吧?存儲過程或者單個屁處理程序命令等。
這些網上所有一下就能找到。
⑹ C++中,查詢sqlserver時 sql語言中如何引用int變數
CString sql;
sql.Format(_T("SELECT * FROM 表名 Where ID=%d"),i);
USES_CONVERSION;
LPSTR strSQL=T2A(sql);
m_pRecordset->Open(strSQL,
m_pConnection.GetInterfacePtr(),
adOpenStatic,
adLockOptimistic,
adCmdText);
如上,把int型變數i 組合成cstring字元串,然後類型轉換,就可以用了。
可以組合各種數據類型,char要加'%s'例如char str;sql.Format(_T("SELECT * FROM 表名 Where ID='%s'"),str);
⑺ 關於sqlserver的T-SQL語句的變數作用域的疑問
變數有幾點:
1. go語句後,也就是一個批次內有效.
2. 存儲過程內表示一個域.走出存儲過程就沒有效了,包括子存儲過程,動態語句內也無效.
3. 一個批次只需要聲明一次.
建議編寫t-sql的時候,養成將變數聲明在語句首的習慣.不要在邏輯控制語句內聲明.