Home > Net >  Nothing shows when I use select *
Nothing shows when I use select *

Time:11-07

I created some tables but when I want to check if my data is inside it doesn't show anything when I use select * from Project it just appears null and I don't have null values I'm not sure what I'm doing wrong it just appears that the foreign key is restrict

 `create table Department
(
    `did    integer      not null auto_increment,
    Dname   varchar(50) default 'HR',
    location varchar(50) default 'Chicago',
    primary key(did)`
    
);

`create table Employee`
(
    Eid     integer         not null auto_increment,
    DepartmentID    integer  default 5,
    Ename   varchar(50)     default 'Josh',
    Erank   integer         default 2,
    Salary  real            default 5000.00,
    primary key(Eid),
    foreign key(DepartmentID) references Department(did)
   
);
/*drop table Project;*/
create table Project
(
    Pid integer             not null auto_increment,
    DepartmentID  integer    default 5,
    Pname varchar(50)       default 'Sorting',
    budget  real            default 5000.00,
    StartYear   integer     default 2000,
    primary key(Pid),
    foreign key(DepartmentID) references Department(did)
    
);

insert
into Project(DepartmentID, Pname, budget, StartYear)
values(1, 'OS', 5000.00, 2018),
      (2, 'Net', 6000.00, 2020);
    

select  *
from Project;

CodePudding user response:

Check this fiddle. There are no rows in Department, so the restraint keeps the insert into Projects from happening. Also, I removed the backticks:

https://dbfiddle.uk/?rdbms=mysql_5.7&fiddle=64f8f0e9cccce2eb2ab77b37fcce54fd

CodePudding user response:

Add COMMIT statements:

create table Project...
commit;
insert into Department values('HR','Chicago');
insert into Department values('Admin','New York');
insert into Project...
commit;
select  * from Project;
  • Related