Toàn bộ tài liệu kỹ thuật MSSQL PostgreSQL của Bravo PGE được tích hợp sẵn. Hỏi trực tiếp, nhận câu trả lời có dẫn nguồn - không cần đọc hết tài liệu.
Các nhóm câu hỏi mà developer hệ thống thường gặp khi chuyển đổi sang PostgreSQL. Dùng trực tiếp hoặc adapt theo case của bạn.
ISNULL(DocDate, '') chuyển sang viết thế nào?SELECT TOP 10 ... ORDER BY ... viết lại trên psql ra sao?dbo.MoneyType ở Bravo MSSQL phải đổi thành kiểu gì trên Bravo PGE?CHARINDEX, DATEADD, DATEDIFF trong PG tương đương gì?FOR INSERT, UPDATE, DELETE convert sang PG ra sao? Cho ví dụ trên bảng B30AccDoc.SELECT có được không?SCOPE_IDENTITY() sau INSERT trên psql thay bằng pattern gì?%s, khi nào %L?nodes()/value() sang pg như nào?column reference "id" is ambiguous - nguyên nhân và cách fix?invalid input syntax for type date: "" - lỗi này do đâu?query has no destination for result data - fix như nào?ufn_sys_logaction hiện đang định nghĩa thế nào?B30AccDoc trên psql có những cột nào, kiểu dữ liệu ra sao?
Tình huống: Convert đoạn UPDATE có @@ROWCOUNT
Trên PostgreSQL, convert giúp tôi đoạn này:
UPDATE dbo.B30AccDoc SET DocStatus = 1 WHERE Id = @_Id
IF @@ROWCOUNT = 0
RAISERROR('Không tìm thấy chứng từ', 16, 1)
Có 3 thay đổi cần áp dụng:
(1) @@ROWCOUNT không tồn tại trên PG - dùng GET DIAGNOSTICS hoặc biến boolean FOUND;
(2) RAISERROR đổi thành RAISE EXCEPTION;
(3) Biến PG không có prefix @ - dùng p_ (param) hoặc _ (local).
GET DIAGNOSTICS _rc := ROW_COUNT thay vì FOUND?
SCOPE_IDENTITY() sau INSERT chuyển sang pattern nào?
postgresql-guide
Tài liệu kỹ thuật nội bộ bao phủ trọn 3 chương - từ nền tảng cú pháp đến vận hành thực chiến.
dbo + search_path, bảng tạm Tmp_, View & MVmy./backend.Khi bạn hỏi, AI tra cứu đúng phần trong tài liệu kỹ thuật, đối chiếu schema thật của Bravo PGE, rồi trả lời có ví dụ code cụ thể và dẫn nguồn chính xác đến mục tương ứng.
BravoGen cung cấp hướng dẫn dựa trên tài liệu nội bộ Bravo PGE. Luôn test code trên môi trường dev trước khi áp dụng production. Với schema thật, AI query trực tiếp PostgreSQL của Bravo PGE.
Paste thẳng đoạn code MSSQL vào chat và yêu cầu convert. Đặt câu hỏi cụ thể - tên bảng, tên function, tên lỗi runtime - để BravoGen tìm được đúng nguồn và trả lời chính xác hơn.