SQL Server ログインと既存の SQL Server データベース ユーザーを接続する方法

2024-07-27

このチュートリアルでは、既存の SQL Server ログインを、同じ名前の既存の SQL Server データベース ユーザーに接続する方法を説明します。この方法は、SQL Server Management Studio (SSMS) または Transact-SQL (T-SQL) を使用して実行できます。

前提条件

  • SQL Server インスタンスへのアクセス権限
  • 既存の SQL Server ログイン
  • 同じ名前の既存の SQL Server データベース ユーザー

方法 1: SQL Server Management Studio (SSMS) を使用する

  1. SSMS を開き、SQL Server インスタンスに接続します。
  2. オブジェクト エクスプローラーで、接続しているデータベースを展開します。
  3. セキュリティ フォルダを展開します。
  4. ユーザー フォルダを右クリックし、 新しいユーザー を選択します。
  5. 新しいユーザー ダイアログ ボックスで、 ユーザー名 ボックスに、接続する SQL Server ログインの名前を入力します。
  6. ログイン ドロップダウン リストから、接続する SQL Server ログインを選択します。
  7. データベース ロール タブを選択します。
  8. ユーザーに割り当てるデータベース ロールを選択します。
  9. OK をクリックして、ユーザーを作成します。

方法 2: Transact-SQL (T-SQL) を使用する

  1. SQL Server Management Studio で、接続しているデータベースにクエリ エディタを接続します。
  2. 次の T-SQL スクリプトを実行します。
USE MyDatabase;
GO

EXEC sp_adduser @loginame = N'MyLogin', @sid = NULL, @password = N'MyPassword', @pwdhash = NULL, @status = 1;
GO

GRANT db_datareader TO MyLogin;
GO

このスクリプトは、次のことを実行します。

  • MyLogin という名前の SQL Server ログインを作成します。
  • ログインに MyPassword というパスワードを設定します。
  • ログインに db_datareader データベース ロールを割り当てます。
  • ユーザーが SQL Server 認証を使用してログインできるようにするには、SQL Server 認証 オプションを選択する必要があります。



USE MyDatabase;
GO

EXEC sp_adduser @loginame = N'MyLogin', @sid = NULL, @password = N'MyPassword', @pwdhash = NULL, @status = 1;
GO

GRANT db_datareader TO MyLogin;
GO

このコードの説明:

  1. USE MyDatabase;: このステートメントは、現在の作業データベースを MyDatabase に設定します。
  2. EXEC sp_adduser ...;: このステートメントは、sp_adduser システム プロシージャを実行します。このプロシージャは、SQL Server ログインを作成します。
    • @loginame = N'MyLogin': このパラメータは、ログインの名前を MyLogin に設定します。
    • @sid = NULL: このパラメータは、ログインのセキュリティ ID (SID) を指定しません。
    • @password = N'MyPassword': このパラメータは、ログインのパスワードを MyPassword に設定します。
    • @pwdhash = NULL: このパラメータは、ログインのパスワード ハッシュを指定しません。
    • @status = 1: このパラメータは、ログインを有効にすることを指定します。
  3. GRANT db_datareader TO MyLogin;: このステートメントは、db_datareader データベース ロールを MyLogin ユーザーに割り当てます。このロールにより、ユーザーはデータベース内のデータを読み取ることができます。

注:

  • このコードは、SQL Server Management Studio でクエリ エディタを使用して実行する必要があります。
  • ログインとユーザーの名前を実際の値に変更する必要があります。
  • ユーザーに割り当てるデータベース ロールは、必要に応じて変更できます。



他の方法

  1. ログイン フォルダを右クリックし、 プロパティ を選択します。
  2. ユーザー マッピング ページを選択します。
  3. マップ 列で、接続するデータベース ユーザーの名前を含むチェックボックスをオンにします。
USE MyDatabase;
GO

ALTER USER MyLogin WITH LOGIN = MyLogin;
GO
  • MyLogin という名前の SQL Server ログインを、MyLogin という名前の SQL Server データベース ユーザーにマップします。
  • 上記の方法を使用する前に、ログインとユーザーが同じ名前であることを確認してください。
  • ログインとユーザーが異なる名前の場合は、まずユーザーの名前をログインの名前と一致させる必要があります。

sql sql-server



SQL Serverデータベースのバージョン管理:Subversion(SVN)との連携方法

この解説では、Subversion(SVN)と呼ばれるバージョン管理システムを用いて、SQL Serverデータベースのバージョン管理を行う方法について説明します。SVNは、ファイルやディレクトリのバージョン管理に広く用いられるオープンソースツールであり、データベースのバージョン管理にも活用できます。...


SQL Server 6.5 からのアップグレードに関する専門家のサポート

SQL Server 6.5 は 2000 年にリリースされた古いバージョンであり、現在ではサポートされていません。最新の機能やセキュリティパッチを利用するためには、新しいバージョンへのアップグレードが必要です。アップグレード方法アップグレード方法はいくつかありますが、一般的には以下の 2 つの方法が選択されます。...


INSERT INTOステートメントのIGNOREオプションでMySQL REPLACE INTOを代替

MySQLのREPLACE INTOコマンドは、SQL Server 2005では完全に同じように実装されていません。しかし、いくつかの代替方法を用いることで、同様の動作を実現することができます。REPLACE INTO とはREPLACE INTOは、INSERT INTOと似ていますが、以下の点が異なります。...


Subversion を使用したデータベース構造変更のバージョン管理

データベース構造変更をバージョン管理システムで管理することは、データベースの開発と運用において非常に重要です。バージョン管理システムを使用することで、以下のメリットを得ることができます。変更履歴の追跡: 過去の変更内容を詳細に追跡することができ、どの変更が問題を引き起こしたのかを特定しやすくなります。...


ALTER TABLE文でユニークインデックス列の値を入れ替える

方法1:UPDATE文を使用する最も簡単な方法は、UPDATE文を使用して、直接値を入れ替えることです。例:この方法では、WHERE条件で特定のレコードのみを対象に値を入れ替えることができます。方法2:CASE式を使用するCASE式を使用して、値を入れ替える条件を指定することもできます。...



SQL SQL SQL SQL Amazon で見る



SQL Server Profilerを使ってSQL Serverテーブルの変更をチェックする

Change Trackingは、テーブルレベルで変更されたデータを追跡する機能です。有効にすると、どの行が挿入、更新、削除されたかを追跡できます。メリット比較的軽量な機能設定が簡単クエリで変更内容を取得できる変更されたデータの内容は追跡できない


SQL Server Profilerを使ってSQL Serverテーブルの変更をチェックする

Change Trackingは、テーブルレベルで変更されたデータを追跡する機能です。有効にすると、どの行が挿入、更新、削除されたかを追跡できます。メリット比較的軽量な機能設定が簡単クエリで変更内容を取得できる変更されたデータの内容は追跡できない


初心者でも安心!PHPでフラットファイルデータベースを始めるためのガイド

PHPは、Web開発に広く使用されているプログラミング言語です。SQLは、データベースとのやり取りに使用される構造化照会言語です。フラットファイルデータベースは、PHPとSQLを使用して読み書きできます。軽量で高速設定と管理が簡単習得しやすい


C#/VB.NET プログラマー必見!T-SQL CAST デコードのすべて

T-SQL CAST は、データを異なるデータ型に変換する関数です。C#/VB. NET で T-SQL CAST を使用する場合、デコードが必要になることがあります。この解説では、T-SQL CAST のデコード方法について、C#/VB


データ移行ツール、クラウドサービス、オープンソースツールを使って SQL Server 2005 から MySQL へデータを移行する

このチュートリアルでは、SQL Server 2005 から MySQL へデータを移行する方法について 3 つの方法を説明します。方法 1: SQL Server Management Studio を使用方法 2: bcp コマンドを使用