FME - Làm cách nào để chuyển đổi chuỗi hồi quy ngày thành định dạng ngày mà SQL Server sẽ chấp nhận?


8

Tôi có ngày ở dạng 07-28-2010tôi trích xuất từ ​​tên tệp DWG. Tôi cần phải đẩy chúng vào một bảng được định dạng DateTime trong SQL Server không phải không gian. SQL Server không thích chúng như các chuỗi đến từ ETL rõ ràng. Làm cách nào tôi có thể đặt kiểu dữ liệu trong ETL từ chuỗi sang datetime? Đây có phải là những gì tôi cần phải làm? Tôi khá chắc chắn đây là vấn đề của tôi dựa trên kinh nghiệm trong quá khứ với việc đẩy ngày sang SQL Server và lỗi này từ FME:

MS SQL Server Writer: 1 attribute value(s) failed conversion, and were written as NULL values

Câu trả lời:


7

Từ Hướng dẫn đọc và viết của FME:

Khi ghi vào cơ sở dữ liệu, người viết hy vọng thuộc tính date sẽ ở dạng YYYYMMDDHHMMSS.

Có lẽ bạn sẽ cần phải sử dụng biến áp DateFormatter để có được định dạng này. Tôi sẽ:

Sử dụng StringReplacer để thay thế - bằng / trong thuộc tính date Sử dụng bộ DateFormatter được đặt thành% Y% m% d hoặc% Y% m% d% H% M% S bao gồm cả thời gian (hãy chắc chắn để hiểu đúng) đến trường datetime trong đầu ra SQL Server


Cảm ơn Mark. Cuối cùng tôi đã sử dụng StringSearcher và regex để lấy ngày ra khỏi tên tệp, sau đó trong StringConcatenator tôi đã sắp xếp lại _matched_parts thành YYYYMMDD. Điều này sau đó chèn vào trường SQL Server datetime tốt.
Chad Cooper

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.