投稿

2014の投稿を表示しています

[VB.NET] 日付文字列を日付型に変換する方法

VB.NETで日付文字列を日付型に変換する方法 DateTime.Parseメソッドを使用する StringからDateTimeへの変換 <VB.NET> 'DateTime.Parse : 現在のカルチャを使用して変換する Dim d As String Dim dt As DateTime d = "2014/12/24 15:32:12" dt = DateTime.Parse(d) Console.WriteLine(dt) '出力 : 2014/12/24 15:32:12 d = "2014/12/24" dt = DateTime.Parse(d) Console.WriteLine(dt) '出力 : 2014/12/24 0:00:00 <VB.NET> 'DateTime.ParseExact : カルチャを指定して変換する Dim d, c As String Dim dt As DateTime d = "2014/12/24 15:32:12" c = "yyyy/MM/dd HH:mm:ss" dt = DateTime.ParseExact(d, c, Nothing) Console.WriteLine(dt) '出力 : 2014/12/24 15:32:12 d = "20141224153212" c = "yyyyMMddHHmmss" dt = DateTime.ParseExact(d, c, Nothing) Console.WriteLine(dt) '出力 : 2014/12/24 15:32:12 d = "2014年12月24日15時32分12秒" c = "yyyy年MM月dd日HH時mm分ss秒" dt = DateTime.ParseExact(d, c, Nothing) Console.WriteLine(dt) '出力 : 2014/12/24 15:32:12 <VB.NET> '文字列操作

[SQL Server] テーブル一覧や列の一覧を取得する方法

SQL Server 2005以降でテーブル一覧や列の一覧を取得する方法 sys.tablesと sys.columnsを使用する テーブル一覧の取得 SQL Server内のユーザテーブルごとに1行のデータが返ってくる <SQL> SELECT * FROM sys.tables sys.tables (Transact-SQL) (Microsoft) 列一覧の取得 ビューやテーブルなど列を持つオブジェクトの列ごとに1行のデータが返ってくる <SQL> SELECT * FROM sys.columns sys.columns (Transact-SQL) (Microsoft) 特定のテーブルの列名取得 以上を応用して特定のテーブルの全ての列名を取得したいときはこうする <SQL> SELECT t.name,c.name FROM sys.tables t INNER JOIN sys.columns c ON t.object_id=c.object_id WHERE t.name='T_HOGE'

[SQL] COUNTするときに条件指定する方法

ExcelでいうCOUNTIF関数のようなことをSQLで行う SQLのCOUNT関数では条件指定ができないので代わりにSUMとCASEを使う 条件を指定してCOUNTする COL1がOKの件数を調べることができる <SQL> SELECT SUM(CASE WHEN COL1 = 'OK' THEN 1 ELSE 0 END) FROM HOGE GROUPIDごとの全件数と、そのグループに対してCOL1がOKの件数を調べることができる <SQL> SELECT GROUPID,COUNT(*),SUM(CASE WHEN COL1 = 'OK' THEN 1 ELSE 0 END) FROM HOGE GROUP BY GROUPID

[SQL Server] SQL Serverでの結合INSERT

SQL Serverで内部結合や外部結合した結果をINSERTする方法 SQL Serverで結合結果をINSERT <SQL> INSERT INTO T_インサート先テーブル(項目) SELECT 項目 FROM T_結合テーブル1 AS T1 LEFT JOIN T_結合テーブル2 AS T2 ON T1.ID = T2.ID WHERE T2.ID IS NULL

[Access SQL] Access SQLで切り捨てを行う方法

OracleではTRUNC関数を使用して切り捨てを行うが、Access SQLにはTRUNC関数はない 代わりにFIX関数を使用する Access SQLのFIX関数 引数の整数部分のみを返す関数 <SQL> 入力 SELECT 数値 , FIX(数値) FROM HOGE; 出力 数値 FIX(数値) 123 123 123.123 123 456.789 456 ○関連サイト 指定した小数桁で切り捨てる FIX関数

[Access VBA] SQLServerのテーブルをODBC接続でAccessにインポートする方法

AccessからSQLServerのテーブルを参照したいが、直接接続すると問題があるときには、一旦Accessにテーブルをインポートしてから参照する AccessにSQL Serverのテーブルをインポートする 前提として、SQL Serverに対するODBC接続が定義されていること <SQL> Function OdbcTableImport() As Integer On Error GoTo Err_Handler Dim DB_Connect_String As String OdbcTableImport = 0 DB_Connect_String = "ODBC;DSN=[ODBC接続名];UID=[ユーザID];PWD=[パスワード]" DoCmd.DeleteObject acTable, "[Accessテーブル名]" DoCmd.Hourglass True DoCmd.TransferDatabase acImport, "ODBC データベース", DB_Connect_String, acTable, "[SQLServerテーブル名]", "[Accessテーブル名]" DoCmd.Hourglass False OdbcTableImport = Nz(DCount("*", "[Accessテーブル名]"), 0) Exit Function Err_Handler: Select Case Err Case 3011 Resume Next Case Else Resume Next End Select Exit Function End Function ○処理の内容 8行目:Access内のインポートテーブルをあらかじめ削除しておく。削除しないと11行目のインポート処理でテーブルが上書き