2010年10月28日木曜日

C# 指定したファイルをOS標準のアプリで開く

//"C:\My Documents\My Pictures"を表示
System.Diagnostics.Process.Start(@"C:\My Documents\My Pictures");

2010年10月15日金曜日

T-SQL の ストアドの outputパラメータをadoで受ける

Dim cmd As New ADODB.Command
Dim rs As ADODB.Recordset

cmd.CommandType = adCmdStoredProc
cmd.CommandText = "[ストアド名]"
Set cmd.ActiveConnection = CurrentProject.Connection
cmd.Parameters.Append cmd.CreateParameter(, 型名, adParamInput, , パラメータの値)
cmd.Parameters.Append cmd.CreateParameter("hoge", 型名, adParamOutput)
Set rs = cmd.Execute

'
'ここでcmd.Executeで取得した値が削除される場合があるため
'rsに代入しておくことにより回避する
'

value = cmd.Parameters(index)

2010年10月13日水曜日

2010年5月19日水曜日

ストアドからストアド

・戻り値がない場合
EXECUTE [dbo].[P_Stored1] 'testdata1';

・戻り値がある場合
DECLARE @return_value int
EXEC @return_value = [dbo].[[P_Stored2] 'testdata2'
SELECT 'Return Value' = @return_value

一時表と動的SQL

DECLARE @sql nvarchar(1024); -- 実行するSQL文を入れます
DECLARE @tab_name nvarchar(16) = 'table1';
-- 入れる一時表を作ろう
CREATE TABLE #TMPTABLE (
chars nvarchar(4000) NULL
);
-- SQL文を作る
SET @sql = 'INSERT #TMPTABLE ';
SET @sql = @sql + 'FROM ' + @tab_name;
-- 実行する
execute (@sql);

CSVファイルの内容をDBに登録する

-- oracleのUTL_FILEみたいなやつは存在しないようです

BULK INSERT dbo.table1 FROM '\\SERVER1\Directory\CSVFILE.CSV'
WITH (
DATAFILETYPE = 'char',
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)


http://msdn.microsoft.com/ja-jp/library/ms188365.aspx

2010年5月18日火曜日

コンボボックスでほしいモノを検索して選択する

// コンボボックス:combo1 がテーブル:TABLE1 にバインドしており、
// カラム:COL1 の値が collumnvalue のものを選択させたいとき

int intPosition = this.tABLE1BindingSource.Find("COL1", collumnvalue);
if (intPosition == -1) { return; }
this.combo1.SelectedIndex = intPosition;