|
dear i have two tables one is student and second is subject. the student is having columns: id(primary key), roll, name. and the subject table is having columns: id(primary key), idfk(foreign key), name.
The problem is that which i wrote query in my code it is fully correct because the student table is being update, but the subject table is not being update due to foreign key of the student which is idfk.
So my question is that. which query should i write in my jsp code, which when execute and it should update the table without any error.
|
|
|
|
|
Faisal_Abdullah wrote: the student is having columns: id(primary key), roll, name. and the subject
table is having columns: id(primary key), idfk(foreign key), name
What is the parent for "idfk(foreign key)" key. You need to include this ID in your INSERT query if something like below:
"INSERT INTO subject(idfk, name) VALUES('"+value+"','"+subject+"')";
.AK.
|
|
|
|
|
If you're using an AUTO_INCREMENT column in MySQL you can retrieve that value using Last_Insert_ID[^] and then use that ID as fkid in the insert to the subject table.
|
|
|
|
|
By the error I suspect you need to set the ID field in Student to an IDENTITY (assuming sql server).
You seem to be inserting a new subject for every student. I suspect your table design is crap and needs to be redone.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
dear friend i am using mysql and oracle. would you create the tables and send me their code here. Please because i am searching this problem solution from last 3 months. Please i humbly request you help me.
|
|
|
|
|
yes you are absolutly right, but how i can do it in oracle and mysql?
|
|
|
|
|
Faisal_Abdullah wrote: yes you are absolutly right, but how i can do it in oracle and mysql?
Get a book, follow some examples, learn, no one here is going to do your work for you.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Your code is subject to SQL Injection[^]. You should fix that ASAP.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Hi,
I want to ask about indexing.
I have employee table and department table with employee_id and department_id primary keys. Also I have department_id in the employee table.
Do I set the employee.department_id as a foreign key for a better performance?
Thanks,
Jassim
Technology News @ www.JassimRahma.com
modified 13-Mar-14 15:58pm.
|
|
|
|
|
Creating a foreign key is required for refrential integrity and is normally a good practice. It is also true that a foreign key has a say inperformance. To make it better what you can do is to create index on the foreign keys.
.AK.
|
|
|
|
|
I did indexed it but do I still need (or is it better) to declare it as foreign key?
Technology News @ www.JassimRahma.com
|
|
|
|
|
As I mentioned creating a foreign key constraint is required for refrential integrety and normally is a good practice. It do have an impact on performance which can be reduced by creating an index. If you craete the index on foreign key it will reduce the lookups.
.AK.
|
|
|
|
|
so declaring it as foreign key is a good practice and will have an impact on the performance but after declaring it do you still recommend to index it or declaring is enough?
Technology News @ www.JassimRahma.com
|
|
|
|
|
Creating a foreign key is not mandatory but is advised to create. Here[^] is a link which tells about the importance of it.
Now here[^] is another article which tells about refrential integrity and performance degradation which might give you a bit more idea about this.
.AK.
|
|
|
|
|
Great
Thanks
Technology News @ www.JassimRahma.com
|
|
|
|
|
|
Hello,
in some table, how can i perform a group by not by the column string but only by the letter of that column
thanks
nelsonpaixao@yahoo.com.br
trying to help & get help
|
|
|
|
|
Yes.
GROUP BY SUBSTR([COLUMN], 1, 1)
I'm not questioning your powers of observation; I'm merely remarking upon the paradox of asking a masked man who he is. (V)
|
|
|
|
|
thanks
nelsonpaixao@yahoo.com.br
trying to help & get help
|
|
|
|
|
i have this periods of experience i want to calculate the sum or total period of these periods
2004-01-06 2004-07-05
2004-07-07 2004-11-30
2010-07-01 2010-07-29
2011-06-12 2011-07-28
2012-07-22 2012-08-20
2013-10-17 2015-05-17
Lost & Forgotten
|
|
|
|
|
If you provide the query you are trying to get working, you are more likely to get help.
What is the underlying database? SQLServer, Oracle, Postgres, etc?
|
|
|
|
|
sql
i made a query calculate the datediff in days and sumed all days now i want to convert this days (integer) to years months and days
thanks
Lost & Forgotten
|
|
|
|
|
ahmad_yossef wrote: i want to convert this days (integer) to years months and days
Well, break it down.. if you have the number of days, how many days in a year? Let's assume 365; so number of years in int(number of days / 365).
Months... let's assume 30 days on average... Months = int((number of days - years * 365) / 30)
And days are then number of days - years * 365 - months * 30
If that doesn't work, better define what you're after.
Given the sample dates you provided, what are the values you calculated for years, months and days?
|
|
|
|
|
thanks for your replay
but i face a problem when i have a number like 1456
the query will be like that
SELECT dayss, dayss / 365 AS years, (dayss - dayss / 365 * 365) / 30 AS Months, (dayss - dayss / 365 * 365) - (dayss - dayss / 365 * 365) / 30 * 30 AS days
FROM dbo.lv_npay_tmp3
which will return
days1 years months days
1456 3 12 1
and it should be
days1 years months days
1456 4 0 1
i hope you got me
thanks alot
Lost & Forgotten
|
|
|
|
|
1456 == (3 × 365) + 361 .
That's clearly not 4 years and 1 day.
The problem is that you're assuming 365 days per year, but only 30 days per month. (30 × 12) = 360 , so you've lost five days.
You need to assume (365 / 12) = 30.4166666... days per month, which will give you an answer of 3 years, 11 months and 27 days.
SELECT
dayss,
dayss / 365 As years,
Cast(Floor((dayss % 365) * 12 / 365.0) As int) As Months,
(dayss % 365) - Cast(Floor((dayss % 365) * 12 / 365.0) * 365.0 / 12 As int) As days
FROM
dbo.lv_npay_tmp3
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|