Oracle 月份

来源:百度知道 编辑:UC知道 时间:2024/06/28 00:28:34
在Oracle中,如何输入英文的DATE数据,形如:02-JAN-65,
在语句
SQL> INSERT INTO customers(customer_id, first_name, last_name, dob, phone)
2 values(1, 'John', 'Brown', 'JAN-01-65', '800-555-1211');
values(1, 'John', 'Brown', 'JAN-01-65', '800-555-1211')
*
第 2 行出现错误:
ORA-01858: 在要求输入数字处找到非数字字符

为什么会提示无效月份?

正确的写法是什么?

客户端是中文环境,月份不能用英文的月份写法,必须用中文的“6月”
如果不想修改sql语句运行的话,就需要在执行该语句之前,使用alter session 命令将nls_date_language修改为american,如下:
alter session set nls_date_language='american' --以英语显示日期或
alter session set nls_date_language='simplified chinese'
alter session set nls_date_format='yyyy-mm-dd';

INSERT INTO customers(customer_id, first_name, last_name, dob, phone)
values(1, 'John', 'Brown', to_date('1965-01-01','yyyy-mm-dd'), '800-555-1211');

to_date('1965-01-01','yyyy-mm-dd')

汉化的Oracle不知道怎么查找出来,英文版的日期结构是'01-APR-08'