未分類

PowerShell - SQL Server 2008 を PowerShell で扱う

SQL Server 2008 を PowerShell で扱う方法について説明します。以下の説明は、Windows Server 2008 R2 Enterprise Edition にインストールした SQL Server 2008 Enterprise Edition で行っています。ファイル名を指定して実行から sqlps を実行します。

データベースを作成

Invoke-SqlCmd "CREATE DATABASE TestDB2 ON PRIMARY
(NAME = N'TestDB', FILENAME = 'D:\TestDB.mdf' , SIZE = 3072KB ,
FILEGROWTH = 1024KB ) LOG ON ( NAME= 'TestDB_log',
FILENAME = N'D:\TestDB_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)"

データベースディレクトリに移動

cd .\SQL\DELL390\DEFAULT\Databases\TestDB2

テーブルとデータを作成

Invoke-Sqlcmd "CREATE TABLE [dbo].[EMP]([EMPNO] [int],[ENAME] [nvarchar](10))"
Invoke-Sqlcmd "INSERT INTO [dbo].[EMP] VALUES (10, 'Yamada')"
Invoke-Sqlcmd "INSERT INTO [dbo].[EMP] VALUES (20, 'Tanaka')"

テーブルディレクトリに移動し、テーブル名を取得

cd .\Tables
dir

テーブルのデータを取得

Invoke-Sqlcmd "SELECT * FROM [dbo].[EMP]"
※尚、SQL Server 2008 用の PowerShell で使用できる専用のコマンドレットは次の通りです。 Convert-UrnToPath
Decode-SqlName
Encode-SqlName
Invoke-PolicyEvaluation
Invoke-Sqlcmd

-未分類