Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Giá trị mặc định của VARCHAR2 trong Oracle là gì?

Giá trị mặc định là một trong các NLS tham số phiên của bạn, cụ thể là NLS_LENGTH_SEMANTICS . Đây là cách tôi có thể kiểm tra nó từ phiên của mình:

select value
from   v$nls_parameters
where  parameter = 'NLS_LENGTH_SEMANTICS'
;

VALUE 
------
BYTE

Bạn có thể thay đổi phiên của mình để thay đổi giá trị (hoặc bạn có thể làm điều đó thông qua giao diện đồ họa trong một cái gì đó như SQL Developer). Bạn cũng có thể đặt lệnh ALTER SESSION trong LOGIN.SQL của mình (hoặc, trên toàn cầu, GLOGIN.SQL ) nếu bạn sử dụng một, nếu bạn muốn một giá trị cụ thể được chỉ định bất cứ khi nào bạn bắt đầu một phiên. Nếu không, khi bạn bắt đầu một phiên mới, mặc định sẽ đến từ SPFile của bạn (rất có thể).

Đây là cách tôi có thể kiểm tra những gì có trong SPFile của mình:

select value
from   v$parameter
where  name = 'nls_length_semantics'
;


VALUE 
------
BYTE

Tôi cũng có thể thay đổi hệ thống của mình để thay đổi những gì trong SPFile, nhưng đó là công việc của DBA (tôi nghĩ vậy). Trong mọi trường hợp, nó CÓ THỂ được thay đổi.

Điều này tương tự với NLS khác tham số - xem xét NLS_DATE_FORMAT ví dụ:hành vi rất giống nhau.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng RTRIM hoặc REGEXP_REPLACE để thay thế dấu phẩy bằng dấu cách dấu phẩy và dấu nháy đơn

  2. SET NULL:Chỉ định một chuỗi để trả về bất cứ khi nào giá trị rỗng xảy ra trong SQLcl / SQL * Plus

  3. DbCommand và SQL được tham số hóa, ORACLE so với SQL Server

  4. Sử dụng REGEXP_SUBSTR với Strings Qualifier

  5. HOẶC Cơ sở dữ liệu / Nhập vào Oracle Express / SQL Developer