cherche prof sql pour une ligne t'explication

cherche prof sql pour une ligne t'explication - Programmation

Marsh Posté le 19-06-2001 à 18:07:31    

voila ce que j'ai dans mon livre
create table JobTitles(jobid varchar(5) constraint pkjobTitle primary key, jobname varchar(20),jobdesc text)
insert into JobTitles(jobID,jobName,jobdesc) values ('j001','president','preseide la societé')
 
creation d'une table ok
c'est la partie constraint c'est quoi pk et pourquoi jobtitle alors que la table s'appel jobtitles avec un s!!
apres c'est bon le primary key etc...
quelqu'un pour m'expliquer???

Reply

Marsh Posté le 19-06-2001 à 18:07:31   

Reply

Marsh Posté le 19-06-2001 à 18:10:52    

jobid varchar(5) constraint pkjobTitle primary key
 
Cela défini la colonne jobid avec le type indiqué et pose une contrainte de type clé primaire sur cette colonne. Afin de pouvoir être référencée par le SGBD, la contrainte est nommée pkjobTitle.

Reply

Marsh Posté le 19-06-2001 à 18:22:52    

j'aurais pu simplement faire un nomchamp varchar(20) not null primary key
n'est ce  point suffisant comme contrainte?

Reply

Marsh Posté le 19-06-2001 à 18:28:25    

Si c'est suffisant, mais dans ce cas tu laisses à Oracle le soin de nommer la contrainte, ce qui donne en général des noms aussi explicites que poétiques, du genre SYS_C0015579.
 
Dans ton exemple initial, la contrainte est nommée pkjobTitle, ce qui est autrement plus facile pour deviner de quoi il s'agit...

 

[edit]--Message édité par irulan--[/edit]

Reply

Marsh Posté le 19-06-2001 à 18:28:31    

En fait dans le cas d'une contrainte primary key, certains SGBD comme SQL Server se passent du mot clé constraint sur la colonne. Cependant si la clé primaire était créé par concaténation de deux colonnes il faudrait que la contrainte soit déclarée explicitement.

Reply

Marsh Posté le 19-06-2001 à 18:30:26    

Guru > ah oui je ne pensais à ce cas-là !
 
Ahlala, ça m'apprendra à ne me servir que du Schema Manager d'Oracle, sans taper les requêtes SQL à la main, comme tout bon programmeu ;)

 

[edit]--Message édité par irulan--[/edit]

Reply

Marsh Posté le 20-06-2001 à 09:04:47    

ok ben merci les gards ça va mieux comme ça!!
donc je continue à avancer merci!!
@+

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed