2009-08-11 30 views
7

Tôi có một tập hợp các tệp trong thư viện trên AS/400/iSeries/System-I/bất cứ điều gì-IBM-muốn-tôi-to-call-it-these- những ngày mà tôi không có DDS (được tạo trong SQL tôi thu thập) nhưng tôi muốn thêm mô tả trường. Tôi không thể tìm thấy cách để thực hiện điều này trên 400.Thêm mô tả trường vào tệp DB2/400

Có ai biết cách tôi có thể thêm mô tả trường không? Đang cập nhật trực tiếp SYSIBM.SQLCOLUMNS để đặt COLUMN_TEXT có an toàn không?

(Tôi không tìm kiếm câu trả lời SQL chung ở đây, chỉ có các câu trả lời cụ thể của DB2/400. Thật không may cho IBM đổi mới nền tảng này và tên rất không thể google mà họ chọn, gần như không thể tìm thấy câu trả lời (hoặc đặc biệt là để chứng minh rằng KHÔNG có câu trả lời) cho những câu hỏi như vậy mà không phải chi tiêu các độ tuổi xem qua tài liệu có khối lượng lớn, không thể hiểu được)

Trả lời

13

Sử dụng lệnh LABEL SQL. Nếu bạn đang sử dụng lệnh STRSQL màn hình màu xanh lá cây, bạn có thể nhắc nó. Lệnh LABEL có thể được sử dụng để đặt cả hai tiêu đề cột và văn bản cột.

Dưới đây là ví dụ về việc sử dụng lệnh LABEL để cung cấp văn bản cột cho hai trường trong tệp có tên TESTFILE1. Các lĩnh vực được đặt tên field1 và field2 trong ví dụ này:

LABEL ON COLUMN TESTFILE1 
(FIELD1 TEXT IS 'My Field 1 text', FIELD2 TEXT IS 'My Field 2 text') 

Dưới đây là một ví dụ về cách sử dụng lệnh LABEL để cung cấp cho tiêu đề cột sẽ hiển thị trong kết quả truy vấn:

LABEL ON COLUMN TESTFILE1 
(FIELD1 IS 'My field   Heading 1', 
FIELD2 IS 'My field   Heading 2') 

Khi tạo tiêu đề cột , bạn nhận được 60 ký tự cho mỗi trường. 20 ký tự đầu tiên là dòng 1. 20 ký tự thứ hai là dòng 2. Thứ ba 20 ký tự là dòng 3. Trong ví dụ trên, các nhóm lĩnh vực sẽ trông như thế này:

My field  My field 
Heading 1 Heading 2
+0

bạn vừa lưu tush của tôi! – jlarson

+0

btw, bạn có biết điều này, hoặc là cái gì bạn nhìn lên? và nếu bạn nhìn lên, hãy cho tôi một đầu mối về phương pháp của bạn bởi vì tôi luôn gắt gỏng googling cho as400 thứ ... – jlarson

+0

Đó là một sự pha trộn. Tôi liếc nhìn trong bảng tham chiếu lệnh SQL của nội dung, thấy từ khóa LABEL và sau đó nhớ đã từng thấy nó trước đây. Tiếp xúc đầu tiên của tôi với từ khóa này là khi tôi sử dụng API tạo DDL từ AS/400 tệp vật lý và DDL được tạo bao gồm các lệnh LABEL. Nơi đầu tiên tôi đi cho công cụ này là iSeries InfoCenter. Đây là một liên kết đến phiên bản V5R4: http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp Để biết chi tiết và mẫu, tôi vừa vào STRSQL, tạo một bảng và sau đó nhắc một số Lệnh LABEL. Cập nhật –

4

Là một gợi ý bổ sung, bạn có thể sử dụng iSeries Navigator để nhận được câu lệnh SQL cho tệp đó. Nếu bạn kích hoạt chương trình này, hãy đăng nhập vào iSeries, vào cơ sở dữ liệu, vào lược đồ, và vào bảng, sau đó bạn có thể tìm thấy tệp của mình. Bạn sẽ tìm thấy nút "tạo SQL" ở đâu đó. Điều này tạo ra một câu lệnh SQL chính xác để bạn tạo bảng. Bạn có thể sử dụng câu lệnh SQL này để làm việc với bảng này.

Đối với câu hỏi của bạn, "LABEL" từ câu trả lời khác là đủ. Câu trả lời này hữu ích nếu bạn muốn làm nhiều thứ hơn, điều đó không thể thực hiện được với ALTER.

Các vấn đề liên quan