星期二, 10月 20, 2009

[資訊] VISIO的樣板(template)哪裡找呢?

http://www.visiocafe.com/index.htm

常常做投影片,需要話架構圖,是不是都找不到適合的網路元件圖呢,這裡有~~~~
有DELL, HP等等,而且是免費的,常常來看看吧。

[Linux] shellscript如何用用array在for loop

sources=(`cat test.log`)
destinations=(`cat test.1.log`)

for ((i=0; i<${#sources[@]}; i++))
do
echo $i
#echo ${sources[$i]} ${destinations[$i]}
done

要同時跑兩個array的時候蠻方便的,還有要把cat的資料轉成array就是加括弧嚕。

星期日, 10月 18, 2009

[MSSQL] 變數不能在ALTER語法中

MSSQL的語法不是每一個statement都可以帶變數的
ALTER TABLE, ALTER PARTITION FUNCTION, ALTER PARTITION SCHEME, ALTER PROCEDURE.
都不行,所以必須把statement先組起來,用EXEC

EXEC('ALTER TABLE xxxx' + @test_table_name + ')

真是沒有好好學MSSQL,所以得花超多的時間發現為什麼。

[MSSQL] 如何從partition value找到使用哪一個filegroup

找了老半天,總算找到了,還真是困難。
http://social.msdn.microsoft.com/Forums/en/sqldatabaseengine/thread/0bb0ba4e-fc06-4d8b-a79d-fb275fac3da1

節錄裡面的SQL

@var int
set @var = object_id('dbo.t1')
select main.tabname, main.partition_id, main.partition_number, main.rows, main.name, main.data_space_id,
main.partition_scheme_id, main.partid, main.function_id, part.value, part.partition_id
from
(select object_name(a.object_id) tabname, a.partition_id, a.partition_number, a.rows,
c.name, c.data_space_id, d.partition_scheme_id, d.destination_id as partid, e.function_id
from sys.partitions a inner join sys.allocation_units b on a.hobt_id = b.container_id
inner join sys.data_spaces c on b.data_space_id = c.data_space_id
inner join sys.destination_data_spaces d on c.data_space_id = d.data_space_id
inner join sys.partition_schemes e on d.partition_scheme_id = e.data_space_id
where a.object_id = @var) main
left join
(select a.function_id, b.value, case when a.boundary_value_on_right = 0 then b.boundary_id else b.boundary_id + 1 end partition_id
from sys.partition_functions a inner join sys.partition_range_values b on a.function_id = b.function_id) part
on main.function_id = part.function_id and main.partition_number = part.partition_id
order by main.partid


為了這個我花了三四天吧....希望對於需要的人有幫助。