投稿

ラベル(SQLServer)が付いた投稿を表示しています

[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 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 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行目のインポート処理でテーブルが上書き...