How to resolve this problem " near "INSERT": syntax error" in SQLite? - sql

I cannot find what wrong in my code, but it is showing "sqlite near "INSERT": syntax error".
my code is
/*CREATE TABLE Employee
(
Emp_ID varchar not NULL PRIMARY key, --0/""
Emp_Name Varchar,
Location varchar,
commission INT,
phone_no varchar,
country varchar
);
*/
INSERT into Employee VALUES ("1","rachit","MP","1700","1234567898","india")
INSERT into Employee VALUES ("2","Swapnil","UP","1524","3485030230","india")
INSERT into Employee VALUES ("3","Hardik","MH","1469","5684586954","india")
INSERT into Employee VALUES ("4","Sarthi","GOA","1985","4995406905","india")
INSERT into Employee VALUES ("5","Rupak","KT","1654","9040938640","india")
INSERT into Employee VALUES ("6","soham","UK","1598","9894945932","india")
INSERT into Employee VALUES ("7","palash","NCR","1789","8984647458","india")

You missed to add ; at the end of each insert statement.
The correct syntax would be
INSERT into Employee VALUES ("1","rachit","MP","1700","1234567898","india");
INSERT into Employee VALUES ("2","Swapnil","UP","1524","3485030230","india");

Related

How to insert value using a table in another table in postgres?

CREATE TABLE employee
(
joining_date date,
employee_type character varying,
name character varying
);
insert into employee VALUES
(NULL,'as','hjasghg'),
('2022-08-12', 'Rs', 'sa'),
(NULL,'asktyuk','hjasg');
create table insrt_st (employee_type varchar, dt date);
insert into insrt_st VALUES ('as', '2022-12-01'),('asktyuk', '2022-12-08')
What I want to do is write a single query to insert date from insrt_st in employee table where joining_date is null in employee column?
You can just write:
insert into employee (joining_date, employee_type, name) VALUES
(NULL,'as','hjasghg'),
('2022-08-12', 'Rs', 'sa'),
(NULL,'asktyuk','hjasg');
insert into insrt_st (employee_type, dt)
VALUES ('as', '2022-12-01')
,('asktyuk', '2022-12-08') ;
UPDATE employee
SET joining_date = I.dt
FROM insrt_st I
WHERE employee.employee_type = I.employee_type
AND employee.joining_date IS NULL;
SELECT joining_date,employee_type,name
FROM employee
Here is example.

Order by not working in SQL analytical functions

create table Employee
(
Ename varchar (255),
empno integer primary key,
deptno integer ,
salary integer
);
`
insert into Employee values ('Gauhar khan',1000,10,5000);
insert into Employee values ('Gauri sharma',1001,10,6000);
insert into Employee values ('Gauresh verma',1002,10,7000);
insert into Employee values ('Raja ashokan',1003,20,8000);
insert into Employee values ('Divya Nair',1004,20,19000);
insert into Employee values ('Ashwin Thakare',1005,20,10000);
insert into Employee values ('Uttam Thapa',1006,30,7800);
insert into Employee values ('Krutagnya Thakker',1007,30,11000);
insert into Employee values ('Kritika manocha',1008,30,12000);
`
select * from Employee;
`
SELECT empno,
deptno,
salary,
SUM(salary) OVER(PARTITION BY deptno ORDER BY salary) AS dept_running_total
FROM Employee;
It returns the error :
Error: near line 1: near "(": syntax error
I have tried using only partition by clause as well still returned the same error. Please guide me in resolving the error. I tried running this over various online sql editors.
This works fine in SQL Server 2014. I can only assume this is not actually the query you are running
SqlFiddle

Msg 245, Level 16, State 1, Line 1 Conversion failed when converting the varchar value 'TP10000' to data type int

create database APU
create table STUDENT
(
Stud_Id varchar(50),
Name varchar (50),
Major varchar (50),
Age int identity not null
)
select*
from STUDENT
insert into STUDENT values ('TP10000','Jamal','Economy','21')
insert into STUDENT values ('TP15000','Putih','Communicatio','19')
insert into STUDENT values ('TP20000' , 'Bakar' ,'Economy', '25')
insert into STUDENT values ('TP25000' , 'Gibson','Management','24')
insert into STUDENT values ('TP35000', 'Rohaya','Computer Science','20')
insert into STUDENT values ('TP40000','Remi','Business','19')
create table student2
(
Stud_Id varchar(50),
Name varchar (50),
Major varchar (50),
Age int identity not null
)
select*
from STUDENT
select*
from student
when i execute this part
insert into STUDENT values ('TP10000','Jamal','Economy','21')
insert into STUDENT values ('TP15000','Putih','Communicatio','19')
insert into STUDENT values ('TP20000' , 'Bakar' ,'Economy', '25')
insert into STUDENT values ('TP25000' , 'Gibson','Management','24')
insert into STUDENT values ('TP35000', 'Rohaya','Computer Science','20')
insert into STUDENT values ('TP40000','Remi','Business','19')
i get this error please help me
Msg 245, Level 16, State 1, Line 1 Conversion failed when converting
the varchar value 'TP10000' to data type int.

Trigger issue - Oracle SQL plus

I have created a trigger to insert values into Payroll once an entry to Employees have been made. But when I insert values into Employees , no values are entered into Payroll from the trigger. Payroll remains empty when I insert values into Employees. Any ideas?
CREATE TABLE Employees(
empid FLOAT,
dept FLOAT,
empname varchar2(25),
salary FLOAT
);
CREATE TABLE Payroll(
empid FLOAT,
salary FLOAT
);
CREATE OR REPLACE TRIGGER NewEmployee
AFTER INSERT
ON Employees
FOR EACH ROW
BEGIN
INSERT INTO Payroll
VALUES(:Old.empid,:Old.salary);
END;
/
INSERT INTO Employees values (1,1,‘supply’,50000);
INSERT INTO Employees values (2,2,‘hard’,80000);
Select * from Employees;
Select * from payroll;
Your :Old.empid and :Old.salary should be :new.empid and :new.salary.
Also, it is slightly more efficient to use a BEFORE INSERT trigger when you can.

SQL Error: ORA-00933: SQL command not properly ended Error at Line: 3 Column: 35

I'm creating a script that creates a TABLE and I have problem with the last command which I have to do:
SELECT Studenci.Nazwisko,
Trunc(Months_Between(Sysdate,Studenci.RokUrodzenia)/12) Wiek FROM
Studenci.RokUrodzenia to_date('1980','YYYY')
This is my script; what am I doing wrong?
CREATE TABLE Studenci(
NrIndeksu NUMBER(3) PRIMARY KEY,
Nazwisko VARCHAR2(16),
RokUrodzenia NUMBER(4),
Kierunek VARCHAR2(12)
);
CREATE TABLE Wykladowcy(
IdWykladowcy NUMBER(4) PRIMARY KEY,
Nazwisko VARCHAR2(16),
Stopien VARCHAR2(6),
Stanowisko VARCHAR(8)
);
CREATE TABLE Kursy(
IdKursu NUMBER(1) PRIMARY KEY,
Nazwa VARCHAR2(18),
IdWykladowcy NUMBER(4) REFERENCES Wykladowcy
);
CREATE TABLE Rejstracje(
NrIndeksu NUMBER(3) REFERENCES Studenci ,
IdKursu NUMBER(1) REFERENCES Kursy ,
Data DATE
);
CREATE UNIQUE INDEX Ind_Kursy_naz ON Kursy(Nazwa);
CREATE INDEX Ind_Studenci_naz ON Studenci(Nazwisko);
CREATE INDEX Ind_Wykladowcy_naz ON Wykladowcy(Nazwisko);
INSERT INTO Wykladowcy VALUES (1010,'Kowalski Jan', 'Dr', 'Adiunkt');
INSERT INTO Wykladowcy VALUES (1011,'Jakubowski Emil','Dr hab','Docent');
INSERT INTO Wykladowcy VALUES (1012,'Gazda Mirosław','Dr','Profesor');
INSERT INTO Kursy VALUES (1,'Bazy danych',1010);
INSERT INTO Kursy VALUES (2,'Systemy operacyjne',1012);
INSERT INTO Kursy VALUES (3,'Multimedia',1011);
INSERT INTO Kursy VALUES (4,'Sieci komputerowe',null);
INSERT INTO Studenci VALUES (101,'Kuczyńska Ewa',1980,'Bazy danych');
INSERT INTO Studenci VALUES (102,'Lubicz Robert',1985,'Multimedia');
INSERT INTO Studenci VALUES (103,'Krajewski Bogdan',1988,'Bazy danych');
INSERT INTO Studenci VALUES (104,'Lityńska Anna',1987,'Multimedia');
INSERT INTO Studenci VALUES (105,'Marzec Marcin',1982,'Multimedia');
INSERT INTO Studenci VALUES (106,'Cichaocki Rafał',1989,'Bazy danych');
INSERT INTO Rejstracje VALUES (101,1,NULL);
INSERT INTO Rejstracje VALUES (102,3,NULL);
INSERT INTO Rejstracje VALUES (104,3,NULL);
INSERT INTO Rejstracje VALUES (106,1,NULL);
INSERT INTO Rejstracje VALUES (104,2,NULL);
INSERT INTO Rejstracje VALUES (101,4,NULL);
INSERT INTO Rejstracje VALUES (103,1,NULL);
INSERT INTO Rejstracje VALUES (103,1,NULL);
INSERT INTO Rejstracje VALUES (105,1,NULL);
UPDATE Rejstracje SET Rejstracje.IdKursu=Rejstracje.IdKursu*3
WHERE Rejstracje.NrIndeksu=105;
COMMIT UPDATE
INSERT INTO Rejstracje(Data)
VALUES (Sysdate);
SELECT *FROM Kursy
WHERE Kursy.IdWykladowcy IS NULL;
SELECT *FROM Rejstracje
WHERE Rejstracje.NrIndeksu=101;
SELECT Kursy.Nazwa
FROM Kursy
ORDER BY Nazwa ASC;
SELECT Studenci.Nazwisko,
Trunc(Months_Between(Sysdate,Studenci.RokUrodzenia)/12) Wiek
FROM Studenci.RokUrodzenia to_date('1980','YYYY')
From the error message it seems like a missing ;.
This SQL:
SELECT Studenci.Nazwisko,
Trunc(Months_Between(Sysdate,Studenci.RokUrodzenia)/12) Wiek
FROM Studenci.RokUrodzenia to_date('1980','YYYY');
is invalid because the to_date() call can't go there like that.
You are probably looking for something like:
SELECT Studenci.Nazwisko,
Trunc(Months_Between(Sysdate,Studenci.RokUrodzenia)/12) Wiek
FROM Studenci
WHERE RokUrodzenia = 1980;
given that RokUrodenzia is a NUMBER(4) column and not a DATE column. You may still have to do some work to get the MONTHS_BETWEEN() call to work since RokUrodenzia is not a DATE (as I said) and MONTHS_BETWEEN probably expects a date. You'll have to investigate how to fix that; you might use TO_DATE() there legitimately.