Tôi có một bảng có một cột clob có dữ liệu XML trong đó. Giả sử tôi muốn thay thế XYZ bằng ABC trong cột clob. Có thể sử dụng sqlplus không?Có thể cập nhật dữ liệu bên trong CLOB bằng SQL không?
Trả lời
"tôi có dòng sản phẩm mới trong cột. Lời khuyên nào ?"
Dòng mới là ký tự; nếu bạn muốn sửa đổi văn bản có chứa chúng, bạn cần phải bao gồm chúng trong chuỗi tìm kiếm. Bạn có thể làm điều này bằng cách sử dụng hàm CHR() nhận giá trị ASCII làm đối số. Các mã chính xác bạn cần bao gồm khác nhau tùy theo hệ điều hành. Bởi vì tôi chạy ví dụ này trên MS Windows, tôi cần phải vượt qua cả linefeed (ASCII = 10) và trở về vận chuyển (ASCII = 13).
SQL> select * from t42
2/
TXT
--------------------------------------------------------------------------------
<ABC> ABCD
</ABC>
SQL> update t42 set txt=replace(txt,'ABCD'||chr(10)||chr(13), 'APC woz here')
2/
1 row updated.
SQL> select * from t42
2/
TXT
--------------------------------------------------------------------------------
<ABC> APC woz here </ABC>
SQL>
Ngẫu nhiên, nếu bạn đang lưu trữ văn bản XML nó có thể là giá trị sử dụng datatype XMLType cho cột thay vì CLOB. Nó đi kèm với rất nhiều chức năng hữu ích.
Tại sao bạn không dùng thử?
SQL> create table nnn(c1 clob);
Table created.
SQL> insert into nnn values ('text ABC end');
1 row created.
SQL> select * from nnn;
C1
-------------------------------------------------
text ABC end
SQL> update nnn set c1=replace(c1,'ABC','XYZ');
1 row updated.
SQL> select * from nnn;
C1
-------------------------------------------------
text XYZ end
SQL>
cảm ơn :). đã hoạt động. một nghi ngờ nữa. nếu tôi phải thay thế nhiều dòng? nói rằng tôi có
Tôi không chắc chắn để hiểu, nó đang làm việc tốt. Xin vui lòng, cho chúng tôi thấy thử của bạn. –
trong xml của tôi tôi có dòng mulitple và tôi muốn thay thế chúng bằng một số giá trị mới. là nó có thể? – Hemant
Có, có thể với một hàm REPLACE(). Hãy thử:
update nnn set c1 = REPLACE(c1,'ABC>','XYZ>')
- 1. Cập nhật SQL trong bộ dữ liệu
- 2. Tại sao tôi không thể cập nhật dữ liệu vào cơ sở dữ liệu bằng LINQ to SQL?
- 3. Cập nhật JPA dữ liệu Spring @Query không cập nhật?
- 4. Cập nhật trường bit sql trong cơ sở dữ liệu
- 5. Có thể cập nhật lược đồ cơ sở dữ liệu sql từ một edmx trong Visual Studio 2008 không?
- 6. Cập nhật nhiều hơn một cột dữ liệu. Có thể
- 7. Không thể cập nhật cơ sở dữ liệu bằng EF Migrations sau khi cập nhật lên EF 6.0.0-alpha
- 8. Có thể truy cập dữ liệu cũ trong CouchDB không?
- 9. cập nhật cơ sở dữ liệu sql với ContentValues và phương thức cập nhật
- 10. SQL lệnh MERGE để cập nhật dữ liệu
- 11. INSERT nhanh bằng SQL không có CẬP NHẬT
- 12. ActiveRecord không cập nhật dữ liệu
- 13. Cập nhật dữ liệu trong Arrayadapter
- 14. Có thể tạo cơ sở dữ liệu bằng NHibernate không?
- 15. Có thể truy cập cơ sở dữ liệu .mdf không có SQL Server không?
- 16. Cập nhật dữ liệu trong Slick Grid
- 17. Chế độ xem trong cơ sở dữ liệu có thể cập nhật được không?
- 18. Có thể đọc một CLOB từ cơ sở dữ liệu Oracle từ xa không?
- 19. Máy chủ SQL - tham gia bên trong khi cập nhật
- 20. Cập nhật dữ liệu VBO với glBufferSubData()
- 21. Làm cách nào để cập nhật dữ liệu bằng RRDtool?
- 22. d3 cập nhật dữ liệu và cập nhật đồ thị
- 23. Cập nhật hình học bên trong lưới không có gì
- 24. SQL Cập nhật từ một kết nối bên trong
- 25. Có thể cập nhật giản đồ cơ sở dữ liệu khuôn khổ ADO.NET Entity không?
- 26. Phải có cách xóa dữ liệu trong SQL Server bằng cách quá tải nhật ký
- 27. Cập nhật bằng LINQ to SQL
- 28. MySQL bên trong tham gia cập nhật
- 29. Dữ liệu được cam kết trong phiên khác/cùng, không thể cập nhật hàng (Oracle SQL Developer)
- 30. SQL tuyên bố cập nhật dữ liệu chỉ có một người dùng
Cảm ơn công việc đó :). cảm ơn cho chỉ datatype XML Tôi havent được sử dụng nó trước nhưng xác định thử. – Hemant