2017-08-23 7 views
-1

Sqlサーバ2012でSQLテーブルをロックしたいのですが、管理者だけがテーブルを開く必要があります。Sqlサーバ2012でSqlテーブルをロックすることはできます

+0

あなたはユーザー権限について話していますか? https://docs.microsoft.com/en-us/sql/t-sql/statements/grant-object-permissions-transact-sql –

+0

Sir、実際に私はtbl_login.ifと呼ばれるテーブルを持っています。ユーザー名とパスワードを設定しました。私以外の誰もこの分野を変えることはできません。 –

+1

パスワードを保存しないでください。パスワードハッシュを保存します。あなたが必要とする "ロック"のために、それはテーブルパーミッションを通して処理されます。 –

答えて

0

UserprofileidがAdminのroleNameを持つAdminの場合は、はいです。 例:

CREATE PROCEDURE Procedurename 
(@UserProfileid BIGINT) 
      AS 
       SET nocount ON; 

       BEGIN 
        IF((SELECT R.NAME 
         FROM trn_userprofile UP(nolock) 
           INNER JOIN aspnetusers U(nolock) 
             ON u.id = up.userid 
           INNER JOIN dbo.aspnetuserroles UR(nolock) 
             ON U.id = UR.userid 
           INNER JOIN dbo.aspnetroles R(nolock) 
             ON UR.roleid = R.id 
         WHERE UP.userprofileid = @UserProfileid 
           AND UP.isactive = 1 
           AND UP.isdeleted = 0) = 'Admin') 
        BEGIN 
         SELECT * 
         FROM tablename 
        END; 
       END; 
+0

1回挿入した後に特定のフィールドをロックしたい –

+0

テーブルに@Neethaを追加するAuthorまたはCreatedByまたはPostedBy Column、where where句にCreatedBy = @ CreatedByと記述します。 –

関連する問題