Không thể mở Kết nối cơ sở dữ liệu ArcCatalog Cơ sở dữ liệu SQL Các bảng có tên trường lớn hơn 31 ký tự


8

Tôi đang sử dụng SQLEXPRESS làm môi trường thử nghiệm.

Tôi có một kết nối cơ sở dữ liệu trong ArcCatalog đến cơ sở dữ liệu SQL. Một số bảng trong cơ sở dữ liệu SQL có tên trường lớn hơn 31 ký tự và các bảng này sẽ không mở trong ArcCatalog.

Các tên trường SQL lớn hơn 31 ký tự có thể được đặt bí danh bằng cách sử dụng Studio Management Studio và sau đó được kết nối lại với ArcCatalog hoặc thực hiện các tên trường trong cơ sở dữ liệu SQL chỉ cần rút ngắn (sẽ khó khăn vì nó thuộc sở hữu của bên thứ 3 )?

Câu trả lời:


4

Giới hạn 31 ký tự là một thành phần của hỗ trợ đa RDBMS trong ArcSDE (Oracle giới hạn tên bảng và tên cột là 30 ký tự).

Đây là một số giới hạn bộ đệm truyền có liên quan từ tệp 10.2.0 bao gồm:

#define SE_MAX_COLUMN_LEN          32  /* MAXIMUM COLUMN NAME LENGTH */
#define SE_MAX_TABLE_LEN           160 /* MAXIMUM TABLE NAME LENGTH */
#define SE_MAX_SCHEMA_TABLE_LEN    30  /* MAXIMUN TABLE 'ONLY' NAME LENGTH */
#define SE_MAX_ALIAS_LEN           32  /* MAXIMUM TABLE ALIAS LENGTH */
#define SE_MAX_ENTITY_LEN          256 /* MAXIMUM ENTITY TYPE LENGTH */
#define SE_MAX_HINT_LEN            1024/* MAXIMUM DBMS HINT LENGTH */
#define SE_MAX_SCHEMA_LEN          32  /* MAXIMUN SCHEMA NAME LENGTH */
#define SE_MAX_OWNER_LEN           32  /* MAXIMUM TABLE OWNER NAME LENGTH */
#define SE_MAX_INDEX_LEN           160 /* MAXIMUM INDEX NAME LENGTH */
#define SE_MAX_GROUP_LEN           128 /* MAXIMUM GROUP NAME LENGTH */

Đây là các kích thước bộ đệm, bao gồm một bộ kết thúc, vì vậy giới hạn ký tự thực tế là ít hơn một.

Tôi sợ bạn cần thay đổi bảng của bạn.


2

Tùy chọn đơn giản nhất của bạn sẽ là tạo Chế độ xem bảng và truy cập thông qua ArcCatalog. Nếu bạn không quen thuộc với chúng, thì View là biểu diễn các bảng được xác định bằng câu lệnh SQL. Trong câu lệnh SQL của bạn, bạn có thể thay đổi tên của các trường như sau:

CHỌN reallyReallyReallyLongFieldName NHƯ FieldOne TỪ Bảng1

Có nhiều lợi ích khác khi sử dụng Chế độ xem bao gồm bảo mật tốt hơn vì bạn không cho phép mọi người truy cập trực tiếp vào các bảng bên dưới.

Một điều khác bạn có thể muốn xem xét lại là xem xét thiết kế cơ sở dữ liệu của bạn. Trong hầu hết các trường hợp, có lẽ bạn không nên sử dụng tên trường dài như vậy.

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.