AMB Posted April 14, 2010 at 09:13 AM Report #321538 Posted April 14, 2010 at 09:13 AM Bom dia Gostaria de saber se é possível e como preencher uma foreign key de forma automática. Tenho uma tabela paciente (com Pat_Id como primary key) e uma tabela exame (com Exam_Id primary key e Pat_Id como foreign key). Sendo que um paciente pode ter varios exames....
mribeiro Posted April 15, 2010 at 12:15 AM Report #321709 Posted April 15, 2010 at 12:15 AM Não tens outro remédio que dar a Pat_Id à tabela exame. No entanto podes preenche-la na própria tabela exame através de uma sequência, mas certamente irás ter inconsistência de dados com isso. O que te aconselho é: Defines uma sequências para a tabela Paciente para a coluna Pat_ID e na tabela exame pões "à mão" o valor na Pat_Id Eu não estou bem é a perceber onde é que vais utilizar isto... É num programa em Java, PHP, C#, etc...?
AMB Posted April 15, 2010 at 08:59 AM Author Report #321725 Posted April 15, 2010 at 08:59 AM Sim é para utilizar num programa em Java, por isso, construir à mão não vai resultar... Já estive a pensar foi do tipo, sempre que outro parametro (nr_p) que é comum às duas tabelas, e sempre que este parametro tiver o mesmo valor o Pat_Id ser igual, mas não sei como fazer isso :s é possivel assim???
M6 Posted April 15, 2010 at 09:13 AM Report #321732 Posted April 15, 2010 at 09:13 AM O que o mribeiro disse está correcto: quando escreves o registo, o valor da foreign key é apenas mais um valor que passas na escrita do registo. Fazes isso de forma manual. Só conseguirás fazer um automatismo se tiveres uma forma automática de descobrir o valor da foreign key e usares isso num trigger. Sim é para utilizar num programa em Java, por isso, construir à mão não vai resultar... E porquê? É essa a forma correcta de fazer, porque é que achas que o teu caso é especial? Já estive a pensar foi do tipo, sempre que outro parametro (nr_p) que é comum às duas tabelas, e sempre que este parametro tiver o mesmo valor o Pat_Id ser igual, mas não sei como fazer isso :s é possivel assim??? Seja qual for a artimanha que inventes, tens de saber qual o valor do campo da foreign key quando vais escrever o registo (a menos que não seja obrigatório). 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now