怎樣打印出SQL語句
使用PRINT一般是寫程序時觀察中間結果,對于你說的這種情況,可以直接用SELECT輸出結果,在存儲過程里也可以這樣。如果是在函數或者觸發器里,可以建個測試表,如果是表值函數則可以定義一個表變量。
如果一定要print,那么這樣吧:
delcare @number int
declare @course nvarchar(30) --for example
select @number=number,@course=course from choice where studentnumber = '20100001'
print @number
print @course
這是樓上的朋友的勞動成果,望勿見怪
如果一定要PRINT全部的,那么用游標吧:
declare @info varchar(200)
declare @curs cursor
set @curs=cursor scroll dynamic
for
select 'number='+convert(varchar(20),number)+'; course='+convert(varchar(20),course) from choice where sex='F'
open @curs
fetch next from @curs into @info
while(@@fetch_status=0)
begin
print @info
fetch next from @curs into @info
end
sql server如何用print語句輸出查詢結果
1、可以使用如下程序將元組的多個屬性輸出
DECLARE @t1 NVARCHAR(100) --聲明一個變量,接收查詢結果值。
SELECT @t1=com_name FROM com WHERE cust_id='20100001' --查詢
PRINT @t1 --輸出結果值。
SELECT @t1=com_name FROM com WHERE cust_id='1405892'
PRINT @t1
SELECT @t1=com_name FROM com WHERE cust_id='569454'
PRINT @t1
SELECT @t1=com_name FROM com WHERE cust_id='647328'
PRINT @t1
SELECT @t1=com_name FROM com WHERE cust_id='1221889'
PRINT @t1
SELECT @t1=com_name FROM com WHERE cust_id='1255607'
PRINT @t1
2、--向上邊的批量select查詢,用print輸出后,在消息中,還能查看結果。如果不用print,就需要一個一個的復制查詢結果。
3、--上邊的語句,是在excel和word中拼接和替換值,得到的批量查詢語句。
擴展資料:
1、不帶輸出項的print即為輸出一個空行,如果之前的print語句輸出項的最后用“,”或“;”,則表示其輸出是在同一行上。其后面的空的print語句用來消除前面的print語句一直在同一行上輸出的效果,使其后面的輸出是在下一行。
Print()
功能
以當前字體在打開的打印作業中打印一行或多行文本。
語法Print(printjobnumber,{tab1,}string{,tab2})
例如用在編程中:
定義一個整型數組,將50個隨機的兩位正整數從下標1開始放入該數組中,求出該數組中具有偶數值的偶數下標元素之和,同時輸出該數組中所有元素的值,每行輸出10個值。
dim a(50) as integer
dim i,s as integer
randomize
s=0
for i=1 to 50
a(i)=int(rnd()*99)+1
if a(i) mod 2=0 then s=s+i
next i
print "s=";s
for i=1 to 50
print a(i);
if i mod 10=0 then print
next i
2、SQL中Print語句用于調試,所以,它輸出的內容屬于調試信息,類似于出錯信息。
3、在不同的編程中,獲取調試信息的,方法不同。此外,很少有人用Print作正常的輸出,當然,在調試過程中用除外。要輸出時,一般用Select語句來得方便一些。多組信息需要輸出時,先生成一個臨時表,然后向臨時表添加,最后把總的臨時表數據向前端推送即可。
參考資料:Print #_百度百科
如何獲取SQL中Print語句輸出內容
1、SQL中Print語句用于調試,所以,它輸出的內容屬于調試信息,類似于出錯信息。
2、在不同的編程中,獲取調試信息的,方法不同。此外,很少有人用Print作正常的輸出,當然,在調試過程中用除外。要輸出時,一般用Select語句來得方便一些。多組信息需要輸出時,先生成一個臨時表,然后向臨時表添加,最后把總的臨時表數據向前端推送即可。
3、VB中的方法供參考,VB是最容易看懂的吧,別的編程語言請借鑒:
SqlConnection cn = new SqlConnection("server=my\\my2005;database=rdwhdata2005;user id=zjh;password=321321");
Listlis = new List();
void info(object o, SqlInfoMessageEventArgs ar)
{
foreach (SqlError r in *)
{
//*(*e);
*("從 SQL Server 中獲取一個數值錯誤代碼,它表示錯誤、警告或“未找到數據”消息。"+*ng());
*("獲取生成錯誤的提供程序的名稱。"+*ng());
*("獲取生成錯誤的 SQL Server 實例的名稱。"+*ng());
*("獲取生成錯誤的存儲過程或遠程過程調用 (RPC) 的名稱。"+*ng());
*("獲取一個標識錯誤類型的數字。"+*ng());
*("獲取對錯誤進行描述的文本。"+*ng());
*("從包含錯誤的 Transact-SQL 批命令或存儲過程中獲取行號。"+*ng());
*("獲取從 SQL Server 返回的錯誤的嚴重程度。"+*ng());
}
}
/* 測試存儲過程中的Print打出的錯誤信息
create proc testproc
as
print 'this is test textproc';
*/
private void button1_Click(object sender, EventArgs e)
{
*ssage += new SqlInfoMessageEventHandler(info);
*();
SqlCommand cmd = new SqlCommand("testproc", cn);
*dType = *Procedure;
*eNonQuery();
*();
//執行完后就有 *(*e);的結果
for (int i = 0; i
怎樣打印出SQL語句
使用PRINT一般是寫程序時觀察中間結果,對于你說的這種情況,可以直接用SELECT輸出結果,在存儲過程里也可以這樣。
如果是在函數或者觸發器里,可以建個測試表,如果是表值函數則可以定義一個表變量。如果一定要print,那么這樣吧:delcare @number intdeclare @course nvarchar(30) --for exampleselect @number=number,@course=course from choice where studentnumber = '20100001'print @numberprint @course這是樓上的朋友的勞動成果,望勿見怪如果一定要PRINT全部的,那么用游標吧:declare @info varchar(200)declare @curs cursorset @curs=cursor scroll dynamicforselect 'number='+convert(varchar(20),number)+'; course='+convert(varchar(20),course) from choice where sex='F'open @cursfetch next from @curs into @infowhile(@@fetch_status=0)beginprint @infofetch next from @curs into @infoend。
如何打印sql語句的執行結果
db=*t(host='localhost',user='root', passwd='xxxxx',db='dbname')
cur=*()
*e('select * from records')
打印所有執行結果
rs=*ll()
for r in rs:
print r
打印一條數據的所有字段信息
rs=*ne()
for r in range(1,n):
print list(rs)[i]
thinkphp怎么打印sql語句
[ SQL ] SHOW COLUMNS FROM `think_action` [ RunTime:0.001339s ]
[ EXPLAIN : array ( 'id' => '1', 'select_type' => 'SIMPLE', 'table' => 'think_action', 'partitions' => NULL, 'type' => 'ALL', 'possible_keys' => NULL, 'key' => NULL, 'key_len' => NULL, 'ref' => NULL, 'rows' => '82', 'filtered' => '100.00', 'extra' => NULL, ) ]
[ SQL ] SELECT * FROM `think_action` LIMIT 1 [ RunTime:0.000539s ]thinkphp如何打印sql語句?