Bonjour,
Est ce que quelqu'un si dans la nouvelle version d'oracle (11), la notion d'auto increment existe ?
Merci d'avance.
Raphaël
Version imprimable
Bonjour,
Est ce que quelqu'un si dans la nouvelle version d'oracle (11), la notion d'auto increment existe ?
Merci d'avance.
Raphaël
ça existe depuis la 7 ! :roll:
au niveau des datatype, il y a le simple_integer qui est plus performant (enfin, c'est ce qui est annoncé) que le pls_integer
Quand je parle d'auto increment, je parle d'une colonne auto increment dans une table.
Equivalent en mysql : CREATE TABLE tab1 (
col1 MEDIUMINT NOT NULL AUTO_INCREMENT....
Oracle utilise depuis longtemps (bien avant que mySQL n'existe) la notion de séquence pour répondre à ça.
CREATE SEQUENCE ma_sequence START WITH 1 INCREMENT BY 1;
...
les valeurs de la colonne dans la table prendront des valeurs comme
ma_sequence.nextval ...
Merci pour ta réponse.
Mais j'aurai besoin d'une précision : on ne peut pas associé une séquence à une colonne directement, il faut passer par un trigger non ?
Merci d'avance.
Raphaël
Pas vraiment mais il faut utiliser le nom de la séquence à l'endroit qui t'arrange. Ici par exemple pour un ajout :
Il y aura 1 dans la colonne numAffCode:
1
2
3
4
5
6
7
8
9
10
11
12 CREATE TABLE Affreter (numAff NUMBER(5), comp CHAR(4), immat CHAR(6), dateAff DATE, nbPax NUMBER(3), CONSTRAINT pk_Affreter PRIMARY KEY (numAff)); CREATE SEQUENCE seqAff MAXVALUE 10000 NOMINVALUE; INSERT INTO Affreter VALUES (seqAff.NEXTVAL,'AF','F-WTSS','13-05-2003',85);
Merci pour tes réponses.
Remarque : je trouve vraiment dommage qu'il n'y es pas de colonnes autoincrement en oracle....
Raphaël
Nous utilisons un trigger pour gérer l'auto-increment et ça fonctionne plutôt bien. Mais ça implique de créer autant de trigger que de gestion d'auto-incrément
je suis assez d'accord, le trigger, c'est du bricolage... peut-être dans oracle 12 ou 13 :aie:
Merci à tous pour vos réponses et j'espére qu'un jour Oracle pensera à l'auto increment et donc aux personnes qui réalisent des applications multi bases...
Raphaël
De toute façon, à la version 12, plus personne n'utilisera d'autres SGBD que Oracle :aie:
alors ... plus besoin de l'auto-increment :mrgreen:
désolé :fessee:
A noter une nouveauté très pénible qui n'est autre que l'absence de SQL*Plus pour windows remplacé par SQL Developper et iSQL*Plus :?
il y a toujours sqlplus pour une fenêtre MS-Dos.
par contre iSQL*Plus n'existe plus non-plus
ha tiens, j'avais pas fait attention pour iSQL*Plus... oui, sql*plus sous DOS mais tu n'es pas sans savoir que c'est bien moins pratique que sous Windows... ne serait-ce que pour copier coller :(
Léo :arrow: parfaitement d'accord, en plus j'ai du mal à saisir l'intérêt de iSQL*Plus :aie:
pour le copier coller ça se discute... ce que j'aime bien sous fenêtre DOS c'est la possible de sélectionner et copier-coller une colonne ;)
sqlplusw je n'ai jamais aimé, perso.
sql developer par contre est sympa, non?
En maintenant la touche ALT tu peux aussi sélectionner par colonne sous plusw :yaisse2:
pas pour lancer des scripts :( Sinon, c'est vraiment un produit intéressant.
Tiens, autre absence génante pour moi c'est OEM... la DB console est pas mal du tout mais certains écrans sont plus pratiques dans OEM... genre la configuration de streams :?
ce qui est un peu plus génant sous dos c'est le jeu de caractères...
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 H:\>set nls_lang NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1 H:\>sqlplus scott/tiger@LSC01 SQL*Plus: Release 11.1.0.6.0 - Production on Mon Nov 5 12:13:57 2007 Copyright (c) 1982, 2007, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production With the Partitioning, OLAP and Data Mining options SQL> select chr(233) from dual; C - ┐ SQL> exit Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production With the Partitioning, OLAP and Data Mining options H:\>set nls_lang=american_america.we8pc850 H:\>sqlplus scott/tiger@LSC01 SQL*Plus: Release 11.1.0.6.0 - Production on Mon Nov 5 12:14:34 2007 Copyright (c) 1982, 2007, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production With the Partitioning, OLAP and Data Mining options SQL> select chr(233) from dual; C - ■ SQL>
c'est rien de le dire :? mais ça peut se régler dans les variables d'environnement il me semble... ça doit être une des taches post-install qu'on fait jamais :aie:
D'ailleurs, sous Vista, la fenêtre de commande est-elle enfin UTF compliant ?(par ce que là, c'est une limitation de Windows, pas d'Oracle !)