Skip to content

Commit fe1757f

Browse files
committed
fix: Role deletion doesn't work
1 parent b05cf64 commit fe1757f

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

mssql/resource_role.go

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ func resourceRoleRead(d *schema.ResourceData, m interface{}) error {
5555
err := row.Scan(&name)
5656
if err == sql.ErrNoRows {
5757
return nil
58-
}else if err != nil {
58+
} else if err != nil {
5959
return err
6060
}
6161
if err := d.Set("name", name); err != nil {
@@ -70,8 +70,15 @@ func resourceRoleUpdate(d *schema.ResourceData, m interface{}) error {
7070

7171
func resourceRoleDelete(d *schema.ResourceData, m interface{}) error {
7272
db := m.(*sql.DB)
73-
name := d.Id()
74-
_, err := db.Query(fmt.Sprintf("DROP USER %s", name))
73+
row := db.QueryRow(fmt.Sprintf("SELECT name FROM master.sys.server_principals WHERE principal_id = %s", d.Id()))
74+
var name string
75+
err := row.Scan(&name)
76+
if err != nil {
77+
return err
78+
}
79+
dropUserQuery := fmt.Sprintf("DROP USER %s", name)
80+
print(dropUserQuery)
81+
_, err = db.Query(dropUserQuery)
7582
if err != nil {
7683
return err
7784
}

0 commit comments

Comments
 (0)