Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách khắc phục “tên hồ sơ không hợp lệ” khi cập nhật hồ sơ thư cơ sở dữ liệu trong SQL Server (T-SQL)

Nếu bạn gặp lỗi "tên hồ sơ không hợp lệ" khi cập nhật hồ sơ Thư cơ sở dữ liệu trong SQL Server, có thể bạn đã quên cung cấp ID hồ sơ.

Khi bạn cập nhật cấu hình Thư cơ sở dữ liệu với sysmail_update_profile_sp thủ tục được lưu trữ, bạn cần bao gồm ID hồ sơ nếu bạn muốn cập nhật tên hồ sơ.

Ví dụ

Hãy tưởng tượng chúng ta chạy đoạn mã sau để trả về tất cả các cấu hình Thư cơ sở dữ liệu:

EXEC msdb.dbo.sysmail_help_profile_sp;

Kết quả:

+--------------+------------------+---------------------------+
| profile_id   | name             | description               |
|--------------+------------------+---------------------------|
| 1            | DB Admin Profile | Profile for admin emails. |
+--------------+------------------+---------------------------+

Và vì vậy, chúng tôi quyết định cập nhật tên của hồ sơ này từ “Hồ sơ quản trị viên DB” thành “Hồ sơ quản trị viên DB mới”.

Dưới đây là một ví dụ về cách không để làm điều đó (tức là cách tạo ra lỗi).

EXECUTE msdb.dbo.sysmail_update_profile_sp
    @profile_name = 'New DB Admin Profile',
    @description = 'Profile for admin emails.';

Trong trường hợp này, tôi cung cấp tên mới và mô tả hiện có. Nhưng điều đó sẽ không cắt đứt được.

Chạy sẽ tạo ra lỗi sau:

Msg 14607, Level 16, State 1, Procedure msdb.dbo.sysmail_verify_profile_sp, Line 42
profile name is not valid

Để thực hiện chính xác, bạn cần cung cấp ID hồ sơ:

EXECUTE msdb.dbo.sysmail_update_profile_sp
    @profile_id = 1,
    @profile_name = 'New DB Admin Profile',
    @description = 'Profile for admin emails.';

Kết quả:

Commands completed successfully.

Bây giờ khi tôi kiểm tra danh sách hồ sơ của mình, tôi thấy tên hồ sơ đã cập nhật.

EXEC msdb.dbo.sysmail_help_profile_sp;

Kết quả:

+--------------+----------------------+---------------------------+
| profile_id   | name                 | description               |
|--------------+----------------------+---------------------------|
| 1            | New DB Admin Profile | Profile for admin emails. |
+--------------+----------------------+---------------------------+

Lưu ý rằng bạn không cần cung cấp ID hồ sơ nếu bạn chỉ cập nhật mô tả (miễn là bạn cung cấp tên hồ sơ chính xác).


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách khắc phục “Chuyển đổi không thành công khi chuyển đổi giá trị thành kiểu dữ liệu” trong SQL Server

  2. Cách thay đổi thông số giá trị bảng

  3. Không thể tải DLL 'SqlServerSpatial.dll'

  4. Truy vấn cực kỳ chậm trong mã nhưng nhanh trong SSMS

  5. Danh sách tất cả các cột chỉ mục &chỉ mục trong SQL Server DB