就是在数据库orcale中建外键报错

在tb_xfl表中的xfllmid同时与tb_lm中的lm_id 和tb_goods表中的gs_flm的列纯在外键关系
--创建大分类名表tb_lm
create table tb_lm(
lm_id number not null primary key,--类名的id
lm_name varchar2(20) not null,--类名的名字
lm_date date default sysdate --时间
)
--创建序列跟触发器
--序列
create sequence seq_tb_lm;

create trigger t_tb_lm
before insert
on tb_lm
for each row
begin
:new.lm_id:=seq_tb_lm.nextval;
end;
--插入数据
insert into tb_lm(lm_name)
select '首页' from dual union
select '图书' from dual union
select '百货' from dual union
select '数码' from dual union
select '品牌' from dual

select * from tb_lm

--创建小分类表名tb_xfl
create table tb_xfl(
xflid number not null ,
xfllmid number not null references tb_lm(lm_id),
xflname varchar2(20) not null,
xfldate date default sysdate
)
--创建序列和触发器
create sequence seq_tb_xfl;

create trigger t_tb_xfl
before insert
on tb_xfl
for each row
begin
:new.xflid:=seq_tb_xfl.nextval;
end;

select * from tb_xfl

update tb_xfl set xfllmid=2,xflname='以纯' where xflid=4;

--创建商品表
create table tb_goods(
gs_id number not null,
gs_name varchar2(200) not null,
gs_flm number references tb_xfl (xfllmid),
gs_img varchar2(100) not null,
gs_price number(8,2) not null,
gs_kucun number,
gs_date date default sysdate
)

--创建序列和触发器
create sequence seq_goods;

create trigger t_tb_goods
before insert
on tb_goods
for each row
begin
:new.gsid:=seq_goods.nextval;
end;

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Orcale 外键失效/生效
–disable fk SELECT ‘ALTER TABLE ‘|| table_name || ’ DISABLE CONSTRAINTS ’ || t.constraint_name ||’;’ FROM user_constraints t WHERE t.constraint_type = ‘R’;–enable fk SELECT ‘ALTER TABLE ‘|| table_n
ORCALE数据库语句报错提示
select a.ObjectID,a.WorkflowCode,b.ParentPid,a.CreatedTime,c.DisplayName+'['+a.WorkflowCode+']' as WorkflowName,rn(CASE WHEN a.PlanFinishTime>=a.FinishTime THEN 0 ELSE 1 END) AS IsOverTimern,round(a.UsedTime / 600000000 ,2)as UseMinute1rn,round(a.UsedTime / 600000000,2) as UseMinute2rn,round(a.UsedTime / 600000000 ,2)as UseMinute3rn,datename(YEAR,a.StartTime)+datename(MONTH,a.StartTime) as CreatedMonth,1 as WorkflowCountrnfrom OT_InstanceContext as arninner join OT_OrganizationDim as b on a.Originator=b.ChildIdrninner join OT_WorkflowClause as c on a.WorkflowCode=c.WorkflowCodernwhere a.[State]=4rnrn看看这个orcale语句有没有不对的地方rn在线等,感谢!!!!
求教高手,orcale数据库报错,不能连接
有一个服务器,别人都能连上rnrn同样的密码,同样的用户名,为什么我连不上rn报的错误如下:rnrnIO异常:the network adapter could not establish the connectionrnrn这是为什么?
orcale报错 无效数字
orcale出现无效数字 今天出现了一个问题,查询数据是莫名其妙出现了无效数字,其实也并不是莫名其妙,都是有根有据的。。 上边分别是1月、12月、11月份数据; 下边介绍一下本项目,基于项目维护,对前同事写的代码还未完全熟悉,对接其他系统获取产品发货的原始数据保存到A表内,之后需要将原始数据中对应产品发货数相加并存储到B表中,执行之后发现并不走这个方法,未发生错误,所以决定方法重构;问题来了...
orcale 439报错
用pl/sql导入数据时报439错误是什么意思啊,大家帮忙!
mysql5.5中建的数据库的位置
菜鸟啊! rn 在网上查了下,Mysql的默认安装路径是在C:\Program Files\mysql....但是我的默认安装路径是C:\Program Files\iLivid,是在这下面。网上的都说默认存储新建数据库的文件是在data下面,但是我在这下面没有找到,里面只有两个文件夹mysql和performance_schema。没有我建的数据库的文件夹.在数据库的配置文件my.ini中没有location的配置信息。rn 那这时我建的数据库在哪里啊 !!!需要配置下my.ini吗????
在VB中建数据库的问题
各位高手:请问在VB环境中如何建数据库,使用什么方法?
程序中建数据库
如何在程序中创建Access的数据库?只用ado控件。
数据库之外键
今天数据库设计的时候讨论要不要设置外键约束的时候,差点都忘记“外键”本质了,以这篇随笔回顾一下。   基本概念   如果关系模式R中的某属性集不是R的主键,而是另一个关系R1的主键则该属性集是关系模式R的外键,通常在数据库设计中缩写为FK。(百度百科)   即本表B中的一个字段(f)关联引用另外一张的表A的主键(id),则该字段(f)为表B的外键。   例子:订单表和订单详
数据库外键
有两张表rnrnCREATE TABLE Arn(rnAno char(9) primary key,rnAbu char(20)rn);rnrnCREATE TABLE Brn(rnBno char(9),rnBna char(20)rnprimary key(Bno,Bna)rn);rnrn建立完后,发现我忘了加外键rn于是:alter table A add constraint FK_A foreign key(Abu) references B (Bna)但提示错了。。rn错误提示:在被引用表 'B' 中没有与外键 'FK_B' 中的引用列列表匹配的主键或候选键。。。怎么解决啊。。求大师
数据库的外键
本人新手,有个问题不明白希望大家指教一下rn 有表A主键为aid, 表B主键为bid,如果表A中有一个属性为bid,rnA aid bid B bid bb rn 001 02 01 22rn 002 02 02 23rn 003 03 03 33rn如上所示,当我删除掉表B中的第二列时,对表A有什么影响?如果bid是表A的外键时又会是什么影响?rn
外键保存,session报错!
[b]异常信息:rnrnorg.springframework.orm.hibernate3.HibernateSystemException: a different object with the same identifier value was already associated with the session: [com.office.vo.UserInfo#1]; nested exception is org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: [com.office.vo.UserInfo#1]rnCaused by: org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: [com.office.vo.UserInfo#1]rn at org.hibernate.engine.StatefulPersistenceContext.checkUniqueness(StatefulPersistenceContext.java:587)rn at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performUpdate(DefaultSaveOrUpdateEventListener.java:284)rn at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsDetached(DefaultSaveOrUpdateEventListener.java:223)rn at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:89)rn at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)rn at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)rn at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)rn at org.hibernate.engine.CascadingAction$1.cascade(CascadingAction.java:218)rn at org.hibernate.engine.Cascade.cascadeToOne(Cascade.java:268)rn at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:216)rn at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169)rn at org.hibernate.engine.Cascade.cascade(Cascade.java:130)rn at org.hibernate.event.def.AbstractFlushingEventListener.cascadeOnFlush(AbstractFlushingEventListener.java:131)rn at org.hibernate.event.def.AbstractFlushingEventListener.prepareEntityFlushes(AbstractFlushingEventListener.java:122)rn at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:65)rn at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26)rn at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)rn at org.springframework.orm.hibernate3.SpringSessionSynchronization.beforeCommit(SpringSessionSynchronization.java:126)rn at org.springframework.transaction.support.TransactionSynchronizationUtils.triggerBeforeCommit(TransactionSynchronizationUtils.java:48)rn at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCommit(AbstractPlatformTransactionManager.java:824)rn at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:634)rn at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:621)rn at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:311)rn at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:117)rn at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161)rn at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:206)rn at $Proxy2.addDepart(Unknown Source)rn at com.office.struts.DepartAction.addDepart(DepartAction.java:157)rnrnrnaction类:rnrn public String addDepart()rn HttpServletRequest req=ServletActionContext.getRequest();rn departInfo=new DepartInfo();rn departInfo.setDepartName(this.getDepartName());rn departInfo.setConnectMobileTelNo(this.getCell());rn departInfo.setConnectNo(this.getTel());rn departInfo.setUserinfo(userService.getUserByUserName(this.getPrincipalUserName()));rn departInfo.setBranchinfo((BranchInfo)branchService.getBranch(this.getBranchId()).get(0));rn try rn departService.addDepart(departInfo);rn req.setAttribute("UserMsg", 7);rn return "UserMsg";rn catch (Exception e) rn e.printStackTrace();rn req.setAttribute("UserMsg", 8);rn return "UserMsg";rn rn rn rnrnrndao类:rnrnrn public boolean addDepart(DepartInfo depart) rn // TODO Auto-generated method stubrn rn try rn this.getHibernateTemplate().saveOrUpdate(depart);rn this.getHibernateTemplate().refresh(depart);rn return true;rn catch (DataAccessException e) rn // TODO Auto-generated catch blockrn e.printStackTrace();rn return false;rn rn rnrn rnrnrnrnHibernate 配置rn userinfo表rnrnrnrn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rnrnrn departinfo表rnrnrn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rnrnrnrnbranchinfo表rnrnrnrn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn[/b]
mysql引入外键报错
CREATE TABLE SUBJECTrn(rnsid INT PRIMARY KEY,rntitle VARCHAR(20) NOT NULL,rnTYPE VARCHAR(20) NOT NULLrnrn);rnCREATE TABLE OPTIONrn(rnid INT PRIMARY KEY,rnsubjectid VARCHAR REFERENCES SUBJECT(sid),rnNAME VARCHAR(20) NOT NULL,rnORDER VARCHAR(20) NOT NULLrn);rnrn报这种错rnrn1 queries executed, 0 success, 1 errors, 0 warningsrnrn查询:CREATE TABLE OPTION ( id INT PRIMARY KEY, subjectid VARCHAR REFERENCES SUBJECT(sid), NAME VARCHAR(20) NOT NULL, ORDER VARCHAR(20...rnrn错误代码: 1064rnYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTIONrn(rnid INT PRIMARY KEY,rnsubjectid VARCHAR REFERENCES SUBJECT(sid),rnNAME VAR' at line 1rnrn执行耗时 : 0 secrn传送时间 : 0 secrn总耗时 : 0.001 secrnrn哪里错了啊。。。。。。。。。。。rnrn
《数据库》数据库外键与关联映射
数据库设计文档典型案例 下载见附录 MySQL外键设置中(更新时)的 Cascade、NO ACTION、Restrict、SET NULL cascade方式 在父表上update/delete记录时,同步update/delete掉子表的匹配记录 set null方式 在父表上update/delete记录时,将子表上匹配记录的列设为null 要注意子表的外键列不能为no...
常见Orcale报错问题解决办法
1.PL/SQL 登录界面无connect as 1)确认一下数据库的版本和PL/SQL的版本是否一致 2)打开PL/SQL,打开“Tools->Preferences”,勾选一个钩钩就可以了,当然不同版本需要勾选的地方不一样,我的是PL/SQL 11版本 3)如果实在不行,在试试下面这个(度娘提供的) 2.PL/SQL登录提示“当前无法识别连接符中请求的服务” 找到数据库服务器的监听文件...
orcale数据库基本的增删改查
本人接触的测试是偏向于业务测试多一些,时常需要接触数据库,之前只接触过SQL,没有接触过orcale,使用后发现也是大同小异。 记录一下orcale基本的增删改查~~ --新建表CBCJ_QC create table CBCJ_QC ( uname varchar(10), sex varchar(10), age varchar(10), ...
Orcale数据库的安装
-
orcale数据库中文汉化
orcale数据库中文汉化orcale数据库中文汉化
Orcale数据库触发器
什么是触发器是一个特殊的存储过程是完成一个特定功能的一个程序是一个与表相关联的,存储的PLSQL程序每当一个特定的数据操作语句 insert update delete在指定的表上触发时,Orcale自动执行触发器中定义的语句序列语法create Trigger XXXX after insert [of 列名] on emp declare begin (执行一些动作); end; ...
ORCALE数据库的资料
ORCALE数据库的资料
orcale数据库 行列互换
orcale数据库 行列互换orcale数据库 行列互换orcale数据库 行列互换
创建orcale数据库用户
创建orcale数据库用户,在空的数据库上建立多个用户库
数据库笔记—Orcale
会话:session .会话是用户与Orcal服务器的连接 .当用户与服务器建立连接时创建会话 .当用户与服务器断开连接时关闭会话 Orcale有几个默认用户: -SYS是系统最高权限的管理员。 -SYSTEM是默认的系统管理员,该用户拥有Orcale管理工具 使用的内部表和视图。通常通过SYSTEM用户管理数据库用户、 权限和存储等 -SOCTT用户是Orcale数据库的一个示范账户, 在数...
Orcale与其他数据库的连接
大虾们!rn冰天雪地跪求:rn如何实现从Orcale 10g 连接到Sql server 2005。rn提供资料一样有分。rn
ORCALE 数据库对象
ORCALE 数据库对象 开发工具与关键技术:Oracle sql*plus PLSQL Developer 作者:邓高发 撰写时间:2019年4月6日 Oracle数据库中有许多对象,常见的有表、索引、视图 。 首先是表对象,表是在数据库中最基本的存在由行和列组成。 创建一个表,使用CREATE TABLE语句创建一个表, CREATE TABLE TEST (NAME VARCHAR2 (2...
orcale数据库-----------------2。字符函数
字符函数:简化操作———————————————单行函数、多行函数 单行函数:操作单个数据 多行函数:操作的数据是多个 —————————————————————————————————————————— 单行函数 —————————————————————————————————————— 字符函数 lower('字母')  ----------->转小写: uppe
orcale数据库pl语言
orcale数据库pl语言和存储过程
orcale数据库(office2003).doc
orcale数据库(office2003).doc
orcale备份,还原数据库
在cmd下边输入 exp 数据库名/密码@数据库服务 file=d:/备份名称.dmp 还原数据库 imp 数据库名/密码@orcl file=d:\备份名称.dmp fromuser=新数据库名
orcale数据库基础教程
orcale数据库基础教程 java 数据库学习
orcale数据库重启
有时候数据死了,或者没有监听,不必重启机子,重启一下数据库服务行了,下面是linux下的启动步骤,没有在win下执行过,可能也可以! 以oracle11i为例 (1) 以oracle身份登录数据库,命令:su - oracle (2) 以系统管理员登录,命令:sqlplus / as sysdba (3) 启动数据库,命令:startup (4) 如果是关闭数据库,命令:shutdown
orcale数据库使用方法
orcacle不同于mysql,可以随意创建数据库,操作数据,orcale中想自己创建一个数据库,首先得创建数据库的数据文件(参考步骤1)和临时文件,其次创建一个用户(参考步骤2),将用户与数据库文件关联,并赋予用户相应权限(参考步骤3)。而在连接数据库时,为了提供统一的连接方式,他们都对应于一个默认的数据库实例XE(对于XE版数据库来说)。 步骤1: CREATE TABLESPACE mo
orcale 远程连接数据库
配置你本机的tnsname文件 远程数据库名= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = IP )(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = 远程数据库名) ) ) 完了就可以连接了。 ...
Orcale操作数据库
操作数据库 1. 插入数据(INSERT语句)         插入数据就是将数据记录添加到已经存在的数据表中,Oracle数据库通过INSERT语句来实现插入数据记录。该语句既可以实现向数据表中一次插入一条记录,也可以使用SELECT子句将查询结果集批量插入数据表。 插入单条数据:插入单条数据是INSERT语句最基本的用法,语法格式: INSERT INTO table_name[...
无法连接orcale数据库
用vm虚了个2000 sp4装了orcale 10g,不进行宽带连接时可以从主机(server 2008)连接数据库.拨号之后虚拟机无法ping通,orcale也无法连接 急等 望高手指点 我是菜鸟
orcale数据库连接字符串
orcale数据库连接字符串
关于远程访问orcale数据库
新手初用oracle数据库,用.net写了个webservice程序(IP192.168.1.5)远程访问oracle数据库(IP192.168.1.2),webservice服务器未安装oracle客户端(但用网上介绍的方法不安装oracle客户端远程连接oracle数据库方法)。webservice程序连接数据库代码都是正确的。而后使用了网上介绍的方法试了,仍然是这个问题,不得解决,麻烦这里的高手帮新手一把,谢谢!rnrn不装oracle客户端连接orcale数据库的方法:rnhttp://blog.csdn.net/lhg0302/archive/2009/04/11/4062569.aspxrnrn错误提示:rn[img=http://i3.6.cn/cvbnm/3b/27/d8/ae290fe936a5af51075d9ab47e34022a.jpg][/img]rnrn网上解决错误的方法一:rnhttp://www.cnblogs.com/strawberryww/archive/2009/03/20/1417404.htmlrn方法二:rnhttp://www.cnblogs.com/TerryFeng/archive/2009/02/23/1396625.htmlrnrn使用之后,还是没解决,还是一样的错误。
Orcale 远程连接数据库错误
TNS:listener does not currently know of SID given in connect descriptor 修改:SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /app/oracle/oracl...
orcale 数据库 计算公式
create or replace function jsgs(v_sql1 in varchar2) return number is   Result number;   v_sql varchar2(2000); begin   v_sql := 'select '||v_sql1||' from dual';   execute immediate v_sql     into
orcale数据库中的函数
orcale数据库中的函数 AddSlashes: 字符串加入斜线。 bin2hex: 二进位转成十六进位。 Chop: 去除连续空白。 Chr: 返回序数值的字符。 chunk_split: 将字符串分成小段。 convert_cyr_string: 转换古斯拉夫字符串成其它字符串。 crypt: 将字符串用 DES 编码加密。
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池