• 0

SQL Invalid Identifier Error


Question

/* Drop tables, sequence, and other objects you create*/
drop table physician;
drop table patient;
drop table appointment;
drop table procedure;
drop table payment;
drop sequence seq_orders;

/* Create 5 tables */
CREATE TABLE Physician
(
DoctorID numeric (10),
FirstName varchar2 (10) not null,
LastName varchar2 (20) not null,
PhoneNumber numeric (12) not null,
Specialty varchar2 (20) not null,
Constaint pk_doctorid primary key (doctorid)
);

CREATE TABLE Patient
(
PatientID numeric (10),
FirstName varchar2 (10),
LastName varchar2 (20),
DOB date,
Address varchar2 (20),
PhoneNumber numeric (12),
Constraint pk_patientid primary key (patientid))
);

CREATE TABLE Appointment
(
ApptID numeric (10),
Date date,
Location varchar2 (10),
Reason varchar2 (20),
Time time,
CONSTRAINT pk_apptid PRIMARY KEY (apptid),
CONSTRAINT fk_doctorid FOREIGN KEY (doctorid) REFERENCES physician (doctorid)
);

CREATE Table Procedure
(
ProcedureID numeric (10),
Type varchar2 (20),
Date date,
Time time,
Site varchar2 (20),
RoomNo varchar2 (10),
Constraint pk_procedureid primary key(procedureid),
Constraint fk_doctorid foreign key (doctorid) references physician (doctorid)
);

CREATE TABLE Payment
(
PaymentID numeric (10)
Method varchar2 (20),
Details varchar2 (30),
InsuranceID numeric (10),
BillNo numeric (10),
Constraint pk_paymentid primary key (paymentid),
Constraint fk_patientid foreign key (patientid) references patient (patientid)
);

create sequence seq_order
start with 1
increament by 1);

insert into physician
            (PhysicianID, FirstName, LastName, PhoneNumber, Specialty)
values
            (1, ‘John’, ‘Smith’, ‘12345678’, ‘Medicine’);

insert into patient
            (PatientID, FirstName, LastName, DOB, Address,PhoneNumber)
values
            (14, ‘John’, ‘Doe’, ‘1/2/80’, ‘Fairfax, VA’,
            ‘5716557895’);

insert into appointment
            (ApptID, Date, Time, Reason, Location)
values
            (seq_order.nextval, to date (‘08-July- 2016’, ‘dd-Mon- yyy’), ‘08:00’, ‘CAB’,
            ‘MGUH’);

insert into procedure
            (ProcedureID, Type, Date, Time, Site, RoomNo)
values
            (‘30’, ‘AVR’, (‘08-July- 2016’, ‘dd-Mon- yyy’), ’08:00’,
            ‘Cardio”, ‘OR2’);

insert into payment
            (PaymentID, Method, Details, InsuranceID, BillNo)
values
            (‘1234’, ‘insurance’, ‘insurance’, ‘45678’, ‘12’);

Friend is receiving this error and I haven't used SQL for about 6 or 7 years ago in college and I cannot find the issue:

 

Ecxlc4N.jpg

 

Any help would be greatly appreciated.

Link to comment
https://www.neowin.net/forum/topic/1302574-sql-invalid-identifier-error/
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Following case identify the solution - http://stackoverflow.com/questions/6027961/ora-00904-invalid-identifier

 

1. Created table name in UPPERCASE or "IN QUOTES"

2. Create Mixed Case then without "" ; otherwise "" will be considered as table name. (Your case)

 

Please check & confirm whether it fix your case or not.

  • 0

From what I can see, he is trying to create a foreign key on a field in the current table that doesn't exist in that table and referencing a real field in another table.

 

For instance, 

 

CREATE Table Procedure
(
ProcedureID numeric (10),
Type varchar2 (20),
Date date,
Time time,
Site varchar2 (20),
RoomNo varchar2 (10),
Constraint pk_procedureid primary key(procedureid),
Constraint fk_doctorid foreign key (doctorid) references physician (doctorid)
);

 

This is trying to create an FK between doctor id in the Procedure table and  PHYSICIAN.doctorid BUT Procedure doesn't have a doctorid field . To make this work it would need to be something like

 

CREATE Table Procedure
(
ProcedureID numeric (10),
DoctorID numeric(10),
Type varchar2 (20),
Date date,
Time time,
Site varchar2 (20),
RoomNo varchar2 (10),
Constraint pk_procedureid primary key(procedureid),
Constraint fk_doctorid foreign key (DoctorID) references Physician(DoctorID)
);

 

 

  • 0

Thank you all so much. Creating the foreign key in the Procedure table and fixing the misspelled word seemed to fix his issues. Also, sorry it took me this long to respond. I already attempted to at work over a week ago but apparently it did not post. Thanks again. He greatly appreciates it.

This topic is now closed to further replies.
  • Posts

    • "When Live Activities launched with iOS 16, Apple gave iPhone users a dynamic way to track stuff like sports scores and food deliveries right on the lock screen." No.... Just no... Life is already noisy enough to have my phone ADD notifications to the existing ones all day long.
    • Samsung Electronics has multiple subsidiaries. Samsung Display is a subsidiary that deals in screen manufacturing, it's a supply chain-based company where the staff solely care about manufacturing displays. Samsung Electronic's TV and Phone division may have other priorities, for example Samsung TV didn't want to go in on OLED because margins were lower when building the entire TV. Samsung Display's entire existence however now depends on OLED as they couldn't undercut Chinese LCD manufacturers but could compete against LG Display who is the only competitor in that market. Samsung Display has this screen manufacturing investment, but Samsung Mobile may not be willing to reduce their margins for going with a display technology that eats into the phone margins.
    • The weather looks gorgeous, I love the atmosphere of this new area.
    • Similar to what started me on the path to switching to Linux... for the first 6mo of Win10 it was installing an AMD GPU driver that broke audio over HDMI which was essential to me. Driver from AMDs site was fine.
    • I have avoided many deer, a few moose, and other smaller animals during my years of driving and have managed just fine with only ABS and ESP, both of which can also be problematic depending on circumstance. I have never feared driving and I live in a rural area with a lot of deer and other animals. Winter or summer, heavy rain or sunshine, night or day, I always prefer and like to drive myself, and I drive constantly in my job. People die in accidents and they always will, that is a fact of life. Something like self-driving busses I can advocate for because they can be set to drive on static routes that always stay the same - i.e. those routes can be specially designed and maintained for them. I've already seen enough idiots doing random idiotic things with their Tesla autodrives that I would rather see them crash and burn because of their own stupidity instead of their "computer failing". I've also been a PC and tech enthusiast of over 25 years so I I'm fine with tech but I want to be the one who uses it, and decides how much of it I use. I also do not want it to make my hands, feet and brain obsolete. For me it's not really about if a computer can do it but about people not having to do things themselves (responsibly). I think that basic driving education should be done with a manual car and these "automatic only" cards should not exist (yes, I'm European and we drive a lot of manual cars, I even prefer them). If a person doesn't have enough coordination to manage a steering wheel, shitfer and pedals, how on Earth are they able to react to any unforseen situation on the road? And giving them autodrive doesn't make me feel any better if the person behind the wheel can't manage even basic driving themselves. One of the things I hate most in today's society (in general) is how pretty much everything that is considered even a bit dangerous is eliminated instead of educating people to assess risks and avoid problems themselves. Instead we make brains obsolete by building systems that do everything for us.
  • Recent Achievements

    • Week One Done
      Crunchy6 earned a badge
      Week One Done
    • One Month Later
      KynanSEIT earned a badge
      One Month Later
    • One Month Later
      gowtham07 earned a badge
      One Month Later
    • Collaborator
      lethalman went up a rank
      Collaborator
    • Week One Done
      Wayne Robinson earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      674
    2. 2
      ATLien_0
      274
    3. 3
      Michael Scrip
      219
    4. 4
      +FloatingFatMan
      170
    5. 5
      Steven P.
      161
  • Tell a friend

    Love Neowin? Tell a friend!