關於SQLServer的小技巧

2022-03-12 12:53:15 字數 2448 閱讀 8386

sp_executesql

set @sql = 'select @row_num=count(*) from dbo.[user]' + @swhere

exec sp_executesql @sql,n'@row_num int output', @row_num output

exec sp_executesql (引數1:動態sql語句),(引數2:引數宣告多個引數用逗號分開), 引數值

如下:declare @sqlstr as nvarchar(1000)

set @sqlstr='set @s=3 select @s select @s1'

declare @outp as int

execute sp_executesql @sqlstr,

n'@s int output, @s1 int',

@outp output,1

select @outp

從sqlserver匯出資料到excel(按此原理應該也可以匯出到access,或任何資料庫。不過我沒試~~)

insert   into   表   select   *   from   

openrowset('microsoft.jet.oledb.4.0'  

,'excel   5.0;hdr=yes;database=c:\test.xls',sheet1$)  

insert into importtest

select * from openrowset

('microsoft.jet.oledb.4.0' ,'data source=c:\storeplace.xls;extended properties=excel 5.0',sheet1$)

--//這個正確!identity_insert

set identity_insert importtest on  --讓自動增長的列可以寫入。

insert importtest (libid,libname,libmgr,flag)

select * from openrowset

('microsoft.jet.oledb.4.0' ,'excel 5.0;hdr=yes;database=c:\storeplace.xls',sheet1$)

set identity_insert importtest off

--//這個不正確!identity_insert

set identity_insert importtest on  --讓自動增長的列可以寫入。

insert into importtest --這裡應該用列列表(libid,libname,libmgr,flag)

select * from openrowset

('microsoft.jet.oledb.4.0' ,'excel 5.0;hdr=yes;database=c:\storeplace.xls',sheet1$)

set identity_insert importtest off

加上access的

--在sqlserver 中查詢、操作access資料庫

--opendatasource data source後的檔名「要帶引號」

select b1.a1,b1.a2,b1.a3 from opendatasource

('microsoft.jet.oledb.4.0','data source="f:\atest.mdb";')...b as b1

--openrowset database後的檔案「」「」「不能「」「」」帶引號

select * from openrowset

('microsoft.jet.oledb.4.0',';database=f:\atest.mdb','select * from a')

--access資料庫將b表的資料匯出到a表並保證沒有重複的。

--a表b表字段都是a1,a2,a3

insert into openrowset('microsoft.jet.oledb.4.0',';database=f:\atest.mdb','select * from a') (a1,a2,a3)

select b1.a1,b1.a2,b1.a3 from opendatasource

('microsoft.jet.oledb.4.0','data source="f:\atest.mdb";')...b as b1

where id not in (select b.id from opendatasource

('microsoft.jet.oledb.4.0','data source="f:\atest.mdb";')...b as b inner join opendatasource

('microsoft.jet.oledb.4.0','data source="f:\atest.mdb";')...a as a on a.a1=b.a1 and a.a2=b.a2 and a.a3=b.a3)

優化SQLServer索引的小技巧

優化sqlserver索引的小技巧 sqlserver中有幾個可以讓你檢測 調整和優化sqlserver效能的工具。在本文中,我將說明如何用sqlserver的工具來優化資料庫索引的使用,本文還涉及到有關索引的一般性知識。關於索引的常識 影響到資料庫效能的最大因素就是索引。由於該問題的複雜性,我只可...

關於select where 的小技巧

大家在寫sql 語句的時候,如果是 select where 型別的語句,有注意到條件的前後順序嗎?我今天做個小實驗。比如查詢位址裡 包含 海口市 及 振興路 兩個關鍵字的資料,一般時候可能會用 select from dm addr where addr like 海口市 and addr lik...

關於演講的小技巧

演講有很多技巧 第一點 必須做好演講的準備 包括了解聽眾 屬於什麼樣的群體,適合什麼樣的內容去演講你的產品內容,也許 熟悉主題和內容,蒐集素材和資料,抓住重點,準備演講稿,作適當的演練 演說時不偏離演講中心 等。第二點 演說者的姿勢儀態 優秀的演講者演說時的姿勢也會帶給聽眾 不同的印象,如果站得正直...