这个问题

[复制链接]
查看11 | 回复6 | 2007-4-25 04:02:08 | 显示全部楼层 |阅读模式
我有一个表sjb结构如下:
Name
Null?Type
------------------------------- -------- ----
RYBH
NOT NULL VARCHAR2(8)
RYMC
VARCHAR2(20)
SJ
DATE
NR
VARCHAR2(40)
如果我想插入一行新的记录:比如rybh是 00000001,rymc是 CYZ,
sj是 当前时间(格式可不可以是yyyy-mm-dd hh:mi:ss),nr为空,如何操作呢?我每次执行都报错。
insett into sjrz values(...)

回复

使用道具 举报

千问 | 2007-4-25 04:02:08 | 显示全部楼层
insert into sjb('00000001','CYZ',sysdate,null);
insert into sjb('00000001','CYZ',to_date('2012-9-24 9:30:10','yyyy-mm-dd hh24:mi:ss'),null);
回复

使用道具 举报

千问 | 2007-4-25 04:02:08 | 显示全部楼层

SQL> create table a(d date);
表已创建。
SQL> insert into a values('2012-9-24 9:30:10');
insert into a values('2012-9-24 9:30:10')

*
第 1 行出现错误:
ORA-01861: 文字与格式字符串不匹配

SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
会话已更改。
SQL> insert into a values('2012-9-24 9:30:10');
已创建 1 行。

回复

使用道具 举报

千问 | 2007-4-25 04:02:08 | 显示全部楼层
本帖最后由 maoweiting 于 2012-9-24 09:50 编辑
SQL> create table A
2(RYBH VARCHAR2(8) NOT NULL ,
3 RYMC VARCHAR2(20),
4 SJ DATE,
5 NR VARCHAR2(40));

Table created

SQL>insert into A values('00000001','CYZ',to_date(sysdate,'yyyy-mm-dd hh:mi:ss'),null);----你不会是这样插滴吧?

insert into A values('00000001','CYZ',to_date(sysdate,'yyyy-mm-dd hh:mi:ss'),null)

ORA-01861: literal does not match format string

SQL>insert into A values('00000001','CYZ',sysdate,null)
2;

1 row inserted
SQL> insert into A values('00000001','CYZ',to_date('2012-9-24 9:30:10','yyyy-mm-dd hh24:mi:ss'),null);

1 row inserted
SQL> select sysdate from dual;
SYSDATE
-----------
2012/9/24 9
SQL> select * from A
2;
RYBH RYMC
SJ
NR
-------- -------------------- ----------- ----------------------------------------
00000001 CYZ
2012/9/24 9
00000001 CYZ
2012/9/24 9



回复

使用道具 举报

千问 | 2007-4-25 04:02:08 | 显示全部楼层
insett into sjrz values(...)
跟你说的表sjb不一致啊,还有,你是想在FORM里操作还是想在触发器写?
触发器直接写INSERT 语句,后面加个commit,在FORM界面上的话,就要定义SJ 项的格式为yyyy-mm-dd hh24:mi:ss
回复

使用道具 举报

千问 | 2007-4-25 04:02:08 | 显示全部楼层
jiaming900806 发表于 2012-9-24 09:57
insett into sjrz values(...)
跟你说的表sjb不一致啊,还有,你是想在FORM里操作还是想在触发器写?
触发 ...

试中、是sjrz,搞错了。谢谢,握爪。
回复

使用道具 举报

千问 | 2007-4-25 04:02:08 | 显示全部楼层
insert into sjb values ('00000001','CYZ',to_date(to_char(Sysdate,'yyyy-mm-dd hh:mi:ss'),'yyyy-mm-dd hh:mi:ss'),Null);
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行