*MSSQL 2014 Express [#jd7b8a04] RIGHT:更新日&lastmod(); ***SQL Serverのインスタンスとは? [#p6d40c20] SQL Serverの実行単位。1つのインスタンスで複数のデータベースを管理できるし、1台のシステムに複数のインスタンスをインストールすることも可能。インスタンスを変えれば、異なるバージョンのSQL Serverを1台のシステムに同時にインストールすることも可能。 ''サービスの詳細設定表示'' -sc qc <サービス名> C:\Users\JE2ISM>sc qc "mssqlserver" [SC] QueryServiceConfig SUCCESS SERVICE_NAME: mssqlserver TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : "D:\MSSQL2014\Microsoft SQL Server\MSSQL12.SQLEXPRE SS5\MSSQL\Binn\sqlservr.exe" -sMSSQLSERVER LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : SQL Server (MSSQLSERVER) DEPENDENCIES : SERVICE_START_NAME : VMW\JE2ISM C:\Users\JE2ISM>sc qc "MSSQL$SQLEXPRESS" [SC] QueryServiceConfig SUCCESS SERVICE_NAME: MSSQL$SQLEXPRESS TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : "D:\MSSQL2014\Microsoft SQL Server\MSSQL12.SQLEXPRE SS\MSSQL\Binn\sqlservr.exe" -sSQLEXPRESS LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : SQL Server (SQLEXPRESS) DEPENDENCIES : SERVICE_START_NAME : JE2ISM@vmw.ism21.net ''すべてのインスタントの表示'' -sc query | find /i "sql" C:\Users\JE2ISM>sc query | find /i "sql" SERVICE_NAME: MSSQL$SQLEXPRESS DISPLAY_NAME: SQL Server (SQLEXPRESS) SERVICE_NAME: SQLWriter DISPLAY_NAME: SQL Server VSS Writer SERVICE_NAME: MSSQL$SQLEXPRESS2 DISPLAY_NAME: SQL Server (SQLEXPRESS2) SERVICE_NAME: MSSQL$SQLEXPRESS3 DISPLAY_NAME: SQL Server (SQLEXPRESS3) SERVICE_NAME: MSSQL$SQLEXPRESS4 DISPLAY_NAME: SQL Server (SQLEXPRESS4) SERVICE_NAME: MSSQLSERVER DISPLAY_NAME: SQL Server (MSSQLSERVER) ***インスタンスとデータベースの関係 [#b4e5f6a9] ------------------------------ ----------------------------- | インスタンス1(MSSQLSERVER) | | インスタンス1(SQLEXPRESS) | | | | | | データベース1, DB2,・・・| | DB1, DB2, ・・・・・ | ------------------------------ ----------------------------- ''参照'' -http://www.atmarkit.co.jp/fwin2k/operation/sqlqa01/sqlqa01_02.html **ユーザによるアクセス権制御(SQL Server 2014 Management Studio) [#td15193f] ''条件'' -ユーザ認証はWindows認証 以下のように設定するとADグループの営業部に属するメンバーがデータベースTESTを Read/Writeできる。 ロールメンバーシップpublicはすべてが属し消すことができない &ref("./権限1.png"); -スキーマ:テーブル、ビュー、および制約などのSQLオブジェクトの集まりである -dbo(データベースオーナ):データベース作成者名でsaで作成した場合のスキーマ名 **Excel VBAからアクセス [#md8c1e09] -ホスト:WIN2008R2SQL -DB名:SQLEXPRESS -DB:TEST -テーブル:Table_1 -認証:Windows認証 -表示場所:Sheet2のA1から ***ライブラリの追加 [#acd23e1a] 一番新しいActiveX Data Objects Library を追加 &ref("./DAO1.png"); ***VBA [#kfedf021] Private Sub CommandButton21_Click() ' Create a connection object. Dim cnPubs As ADODB.Connection Set cnPubs = New ADODB.Connection ' Provide the connection string. Dim strConn As String 'Use the SQL Server OLE DB Provider. strConn = "PROVIDER=SQLOLEDB;" 'Connect to the Pubs database on the local server. ' SOURCE=(ホストサーバ名)\(データベースサーバ名);INITIAL CATALOG=(データベース);" 'strConn = strConn & "DATA SOURCE=(local);INITIAL CATALOG=pubs;" strConn = strConn & "DATA SOURCE=WIN2008R2SQL\SQLEXPRESS;INITIAL CATALOG=TEST;" 'Use an integrated login. 'Windows認証 "INTEGRATED SECURITY=sspi" こちらがよい 'OR "Trusted_Connection = Yes"でもWindows認証OKみたい strConn = strConn & " INTEGRATED SECURITY=sspi;" 'Now open the connection. cnPubs.Open strConn '-------------------------- ' Create a recordset object. Dim rsPubs As ADODB.Recordset Set rsPubs = New ADODB.Recordset With rsPubs ' Assign the Connection object. .ActiveConnection = cnPubs ' Extract the required records.(SQLの発行) '.Open "SELECT * FROM Authors" .Open "SELECT * FROM Table_1 Where ID=3" ' Copy the records into cell A1 on Sheet1. Sheet2.Range("A1").CopyFromRecordset rsPubs ' Tidy up .Close End With cnPubs.Close Set rsPubs = Nothing Set cnPubs = Nothing End Sub ** ExcelにMSSQLからインポート [#s7910d48] ''Excelメニューから:'' その他のデータソース→SQLサーバ -サーバ名:WIN2008R2SQL\SQLEXPRESS -Windows認証を使用する 次へ -使用するデータが含まれているデータベースを選択:TEST -指定したテーブルに接続(チェック) 次へ -接続ファイル名:このファイルを実行すると同じことができる -フレンドリ名:WIN2008R2SQL_SQLEXPRESS TEST Table_1 完了