Tôi cần cập nhật / thay thế dữ liệu trong datatable.column. Bảng có một trường được đặt tên Content
. Tôi đang sử dụng REPLACE
chức năng. Vì là kiểu dữ liệu cột NTEXT
, nên SQL Server không cho phép tôi sử dụng REPLACE
hàm.
Tôi không thể thay đổi kiểu dữ liệu vì cơ sở dữ liệu này là bảng phần mềm của bên thứ ba. Thay đổi kiểu dữ liệu sẽ khiến ứng dụng bị lỗi.
UPDATE [CMS_DB_test].[dbo].[cms_HtmlText]
SET Content = REPLACE(Content,'ABC','DEF')
WHERE Content LIKE '%ABC%'
Tôi nhận được lỗi này:
Msg 8116, Mức 16, Trạng thái 1, Dòng 1 Kiểu dữ liệu đối số ntext không hợp lệ cho đối số 1 của hàm thay thế.
- Tôi có thể sửa lỗi này bằng T-SQL không? Ai đó có một ví dụ về cách đọc và lặp lại?
- Vì đây là chuyển đổi một lần, có lẽ tôi có thể đổi sang loại khác nhưng tôi sợ rằng tôi đang làm rối tung dữ liệu.
Có một trường khóa chính: tên: ID - số nguyên - đó là danh tính .... Vì vậy, tôi cũng cần phải suy nghĩ về điều này. Có thể đặt Identity thành N tạm thời.
Xin tư vấn về cách đạt được hàm REPLACE?
Khoảng 3000 câu lệnh cần được cập nhật với một giải pháp mới.