出现ora01843 无效的月份怎么办_MySQL教程,ora01843
no database selected是什么意思_MySQL教程
no database selected就是没有选择数据库的意思,是因为没有选择新创建的表所在的数据库导致的,其解决办法就是在创建表之前使用use语句,格式为“use database_nam”,这样即可对数据库进行操作。
出现ora01843 无效的月份怎么办?
执行 下面的SQL语句时
select TO_DATE('01-FEB-1988', 'DD-MON-YYYY') from dual;
出现了如下的错误:
重新查询了一下 当前系统时间 的日期格式,发现如下:
执行:
SELECT TO_CHAR(sysdate, 'DD-MON-YYYY','NLS_DATE_LANGUAGE = ''SIMPLIFIED CHINESE''') Chn, TO_CHAR(sysdate, 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = American') Ame, TO_CHAR(sysdate, 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = Japanese') Jap, TO_CHAR(sysdate, 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = english') Eng FROM DUAL;
出现如下结果:
[深度Liunx系统]安装数据库MySQL和MySQL workbench_MySQL教程
1.打开命令行 ALT+CTRL+T;2.输入sudo apt-get install mysql-server并按要求输入管理员密码;3.输入apt-get install mysql-client;4.输入sudo....
由SQL语句,可以看出,第一道第四行的TO_CHAR函数获取系统时间分别为 china,American,Japanese,English
从结果图看出,在china和Japanese下的时间格式为 27-7月-2018
由此可知,在上述的问题中,要想将时间格式转化为 “DD-MON-YYYY” 这种形式时会出现 ORA-01843的错误,因为系统不会去识别 英文的MON;
所以解决办法如下:
1.将select TO_DATE('01-FEB-1988', 'DD-MON-YYYY') from dual;中的时间字段改成中文格式的,即“01-二月-1998”;
2.设置其NLS_DATE_LANGUAGE的格式为Aerican或者是English即可
ALTER SESSION SET nls_date_language = 'SIMPLIFIED CHINESE';
推荐:《mysql视频教程》
以上就是出现ora01843 无效的月份怎么办的详细内容,更多请关注ki4网其它相关文章!
查看explain中的key_len判断究竟用了哪个索引_MySQL教程
在一张表里有多个索引 , 我们where字段里条件有多个索引的值 , 那么究竟使用的哪个呢?