Có thể tạo bảng có tên cột chứa không gian không? Nếu vậy làm thế nào tôi có thể tạo và sử dụng nó?Tên cột bảng Oracle có không gian
Trả lời
Có thể, nhưng không khuyến khích. Bạn cần phải kèm theo tên cột trong dấu ngoặc kép.
create table my_table ("MY COLUMN" number);
Nhưng lưu ý các cảnh báo trong the documentation:
Note: Oracle không khuyên bạn sử dụng định danh tính cho tên đối tượng cơ sở dữ liệu . Các số nhận dạng được trích dẫn này được SQL * Plus chấp nhận, nhưng chúng có thể không hợp lệ khi sử dụng các công cụ khác quản lý cơ sở dữ liệu đối tượng.
Tên sẽ được trường hợp nhạy cảm, và bạn wil phải kèm theo tên trong dấu ngoặc kép mỗi khi bạn tham khảo nó:
select "MY COLUMN" from my_table;
Vì vậy ... không, sẽ là lời khuyên của tôi ...
+1 cho "không". –
Bạn có thể (xem the Oracle doc) nếu bạn trích dẫn những điều này một cách thích hợp. Tuy nhiên tôi nghi ngờ đây không phải là một ý tưởng tốt, vì bạn sẽ phải trích dẫn mọi thứ. Nói chung các tiêu chuẩn/quy ước đặt tên db (ví dụ: here hoặc here) ưu tiên sử dụng dấu gạch dưới (không yêu cầu trích dẫn) trên khoảng trắng.
Đây là nguyên tắc cột được định nghĩa cho oracle
Cột (đối với bảng)
- Tất cả các cột ở dạng {alias} _ {colname}. Ví dụ: prs_id, prs_name, prs_adr_id, adr_street_name. Điều này đảm bảo rằng cột tên là duy nhất trong một lược đồ, ngoại trừ các cột được chuẩn hóa từ một bảng khác, được điền bằng trình kích hoạt hoặc ứng dụng logic.
- Tất cả các cột đều ở dạng số ít. Nếu bạn nghĩ rằng bạn cần một tên cột trong số nhiều suy nghĩ hai lần cho dù đó là thiết kế đúng? Thông thường, nó có nghĩa là bạn đang bao gồm nhiều giá trị trong cùng một cột và rằng nên tránh .
- Tất cả các bảng có cột khóa chính thay thế dưới dạng {alias} _id, là cột đầu tiên trong bảng. Ví dụ: prs_id, mat_id, adr_id.
bạn luôn có thể có bí danh cho tên cột bu sử dụng ""
Bạn có nguồn cho những điều trên không? –
Những giao diện đó giống như quy ước đặt tên công ty hoặc dự án chứ không phải quy tắc 'Oracle'. Các quy tắc đặt tên đối tượng là [ở đây] (http://docs.oracle.com/cd/E11882_01/server.112/e10592/sql_elements008.htm). –
Không cần tên cột là duy nhất trong lược đồ. Chỉ trong một bảng hoặc xem. –
Có, đó là có thể. Bạn chỉ cần chắc chắn để báo giá tên cột. Ví dụ:
CREATE TABLE Fubar ("Foo Bar" INT);
INSERT INTO Fubar VALUES (1337);
SELECT "Foo Bar" FROM SpaceMonster
Mặc dù có thể, không có ý tưởng hay. Bạn có thể tiết kiệm cho mình khỏi rất nhiều đau đớn nếu chỉ thay thế tất cả các không gian bằng dấu gạch dưới.
Trong trường hợp có dấu ngoặc kép bên ngoài, làm thế nào để bạn kèm theo tên trường sau đó? ví dụ: d2rq: sqlExpression "TO_CHAR (factCloverAsphere.Time Data Recorded, 'Dy Mon DD HH24: MI: SS YYYY')" – Angelina
Bạn đã sử dụng Google cho điều này chưa?Tôi đã làm - liên kết thứ 6 là this, trong đó tôi tìm thấy những điều sau đây:
create table employee (
"First Name" varchar2(20),
"Last Name" varchar2(20),
Address varchar2(60),
Phone varchar2(15),
Salary number,
EmpID number,
DeptID number
);
... hoạt động tốt khi tôi thử nó trong 10g.
có thể bằng cách đặt tên cột giữa hai ví dụ "
: "My columN", tên cột trở thành phân biệt chữ hoa chữ thường.
SELECT "my column" from table; --NOT OK
SELECT "My columN" from table; --OK
- 1. Bảng Oracle có $ trong tên
- 2. Oracle tạo bảng có chú thích cột
- 3. Cách đổi tên cột bảng trong Oracle 10g
- 4. Cách so sánh hai cột bảng theo cột trong oracle
- 5. Oracle 11g: Tháo nhiều cột và bao gồm tên cột
- 6. Tại sao tên bảng/cột/chỉ mục của Oracle bị giới hạn trong 30 ký tự?
- 7. Đổi tên Bảng Oracle hoặc Xem
- 8. LINQ: Lấy Tên Cột Bảng
- 9. Tìm bảng từ tên cột truy vấn trong oracle Nhà phát triển SQL
- 10. Thay đổi kích thước tên bảng/cột/chỉ mục trong oracle 11g hoặc 12c
- 11. Oracle SQL: chọn từ bảng có bảng lồng nhau
- 12. Phân tích cú pháp XML với các không gian tên không xác định trong Oracle SQL
- 13. Trong Oracle, có thể "chèn" một cột vào một bảng không?
- 14. Có loại tem thời gian sửa đổi tự động cho các cột Oracle không?
- 15. Oracle thiếu một datatype Bit cho các cột bảng
- 16. Oracle - Bảng Zombie
- 17. chọn một bảng có các tên cột khác nhau
- 18. Trích xuất phần thời gian từ cột TimeStamp trong ORACLE
- 19. Oracle Ngày cột lưu trữ thời gian, nhưng không hiển thị nó
- 20. Loại ngày không có thời gian trong Oracle
- 21. Lấy tên cột trong bảng mysql?
- 22. Cách lấy cột khóa chính trong Oracle?
- 23. Hạn chế tên cột của bảng Postgres?
- 24. Oracle - cách xóa không gian trắng?
- 25. Tại sao không gian tên cột hợp lệ trong SqlServer?
- 26. lấy tên cột cho bảng cụ thể
- 27. Chọn MySQL, cột có cùng tên từ nhiều bảng, sắp xếp theo một cột khác có cùng tên
- 28. sqlite3: tạo bảng không có cột
- 29. Tạo một bảng không có cột
- 30. Oracle SQLDeveloper Bảng Tên thiết lập tự động hoàn thành
Có thể - đọc về "số nhận dạng được trích dẫn" trong hướng dẫn. Nhưng tôi sẽ ** mạnh mẽ khuyên bạn không nên làm điều đó. –