IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Parenthèse, script tout simple de backup d'un serveur de base de donnée dans docker


Sujet :

Shell et commandes GNU

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 7
    Points : 2
    Points
    2
    Par défaut Parenthèse, script tout simple de backup d'un serveur de base de donnée dans docker
    Bonjour, j'ai un problème de connaissance en script shell. Je veux faire une commande toute simple qui me permet de sauvegarder une base de donnée dans un container docker

    Voici ce qui est affiché dans la console après execution (il y a des echo) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    stretch@DebianStretch:~/scripts/backup/mssql$ ./backup_mssql.sh 
    sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P MOTDEPASSE -Q "BACKUP LOG WITH NORECOVERY DATABASE [vega] TO DISK = N'/var/opt/mssql/backup/MSSQL_vega-2017-11-07-20.31.43.bak' WITH NOFORMAT, NOINIT, NAME = 'vega', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
    ---
    Sqlcmd: 'LOG" "WITH" "NORECOVERY" "DATABASE" "[vega]" "TO" "DISK" "=" "N'/var/opt/mssql/backup/MSSQL_vega-2017-11-07-20.31.43.bak'" "WITH" "NOFORMAT," "NOINIT," "NAME" "=" "'vega'," "SKIP," "NOREWIND," "NOUNLOAD," "STATS" "=" "10""': Unexpected argument. Enter '-?' for help.
    et voici mon script

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #!/bin/bash
    HOST="localhost"
    LOGIN="SA"
    PASSWORD="MOTDEPASSE"
    DATABASE="vega"
    DATEBACKUP=$(date +%Y-%m-%d-%H.%M.%S)
    CMDLINE="BACKUP LOG WITH NORECOVERY DATABASE [$DATABASE] TO DISK = N'/var/opt/mssql/backup/MSSQL_$DATABASE-$DATEBACKUP.bak' WITH NOFORMAT, NOINIT, NAME = '$DATABASE', SKIP, NOREWIND, NOUNLOAD, $
    CMDLINE_COMPLET="sql1 /opt/mssql-tools/bin/sqlcmd -S $HOST -U $LOGIN -P $PASSWORD -Q \"$CMDLINE\""
    echo $CMDLINE_COMPLET
    echo "---"
    docker exec -it $CMDLINE_COMPLET
    la commande que je veux executer est toute simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S $HOST -U $LOGIN -P $PASSWORD -Q "BACKUP LOG WITH NORECOVERY DATABASE [$DATABASE] TO DISK = N'/var/opt/mssql/backup/MSSQL_$DATABASE-$DATEBACKUP.bak' WITH NOFORMAT, NOINIT, NAME = '$DATABASE', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
    comment faire pour éviter cette erreur à l'execution du script ? Le shell me met tout les mots entre parenthèse, c'est une erreur bizarre que je n'arrive pas à résoudre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sqlcmd: 'LOG" "WITH" "NORECOVERY" "DATABASE" "[vega]" "TO" "DISK" "=" "N'/var/opt/mssql/backup/MSSQL_vega-2017-11-07-20.31.43.bak'" "WITH" "NOFORMAT," "NOINIT," "NAME" "=" "'vega'," "SKIP," "NOREWIND," "NOUNLOAD," "STATS" "=" "10""': Unexpected argument. Enter '-?' for help.
    J'ai pourtant mis des

  2. #2
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 280
    Points : 12 729
    Points
    12 729
    Par défaut
    Tu veux dire des guillemets ???
    essayes comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    docker exec -it "$CMDLINE_COMPLET"
    Cordialement.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    j'obtiens ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    "docker exec" requires at least 2 arguments.
    See 'docker exec --help'.
     
    Usage:  docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
     
    Run a command in a running container

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Voilà une information qu'elle est claire!

    Donc, manifestement, "docker exec" attend au moins 2 arguments, le conteneur et la commande, suivie de ses arguments (à elle).

    Il me semble que ça va être compliqué d'arriver à tout mettre dans une variable CMDLINE_COMPLET...

    De plus, tu disais précédemment:
    Citation Envoyé par stephane86 Voir le message
    voici mon script

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #!/bin/bash
    HOST="localhost"
    LOGIN="SA"
    PASSWORD="MOTDEPASSE"
    DATABASE="vega"
    DATEBACKUP=$(date +%Y-%m-%d-%H.%M.%S)
    CMDLINE="BACKUP LOG WITH NORECOVERY DATABASE [$DATABASE] TO DISK = N'/var/opt/mssql/backup/MSSQL_$DATABASE-$DATEBACKUP.bak' WITH NOFORMAT, NOINIT, NAME = '$DATABASE', SKIP, NOREWIND, NOUNLOAD, $
    CMDLINE_COMPLET="sql1 /opt/mssql-tools/bin/sqlcmd -S $HOST -U $LOGIN -P $PASSWORD -Q \"$CMDLINE\""
    echo $CMDLINE_COMPLET
    echo "---"
    docker exec -it $CMDLINE_COMPLET
    D'abord, est-il "normal" que la ligne définissant CMDLINE se termine par un dollar tout seul et que le guillemet de départ ne soit pas fermé?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CMDLINE="BACKUP LOG WITH NORECOVERY DATABASE [$DATABASE] TO DISK = N'/var/opt/mssql/backup/MSSQL_$DATABASE-$DATEBACKUP.bak' WITH NOFORMAT, NOINIT, NAME = '$DATABASE', SKIP, NOREWIND, NOUNLOAD, $
    Ensuite, tu disais aussi:
    Citation Envoyé par stephane86 Voir le message
    la commande que je veux executer est toute simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S $HOST -U $LOGIN -P $PASSWORD -Q "BACKUP LOG WITH NORECOVERY DATABASE [$DATABASE] TO DISK = N'/var/opt/mssql/backup/MSSQL_$DATABASE-$DATEBACKUP.bak' WITH NOFORMAT, NOINIT, NAME = '$DATABASE', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
    Peux-tu nous dire si cette commande "toute simple" (sic!) fonctionne toute seule?

    C'est-à-dire, que se passe-t-il si tu remplaces la dernière ligne de ton script par celle que tu donnes (sans passer par $CMDLINE_COMPLET), comme ceci (en protégeant toutes les variables par des guillemets, comme il se doit):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #!/bin/bash
    HOST="localhost"
    LOGIN="SA"
    PASSWORD="MOTDEPASSE"
    DATABASE="vega"
    DATEBACKUP=$(date +%Y-%m-%d-%H.%M.%S)
     
    echo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S "${HOST}" -U "${LOGIN}" -P "${PASSWORD}" -Q "BACKUP LOG WITH NORECOVERY DATABASE [${DATABASE}] TO DISK = N'/var/opt/mssql/backup/MSSQL_${DATABASE}-${DATEBACKUP}.bak' WITH NOFORMAT, NOINIT, NAME = '${DATABASE}', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
    echo "---"
    docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S "${HOST}" -U "${LOGIN}" -P "${PASSWORD}" -Q "BACKUP LOG WITH NORECOVERY DATABASE [${DATABASE}] TO DISK = N'/var/opt/mssql/backup/MSSQL_${DATABASE}-${DATEBACKUP}.bak' WITH NOFORMAT, NOINIT, NAME = '${DATABASE}', SKIP, NOREWIND, NOUNLOAD, STATS = 10"

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    D'abord, est-il "normal" que la ligne définissant CMDLINE se termine par un dollar tout seul et que le guillemet de départ ne soit pas fermé?
    C'est une erreur merci !

    Peux-tu nous dire si cette commande "toute simple" (sic!) fonctionne toute seule?
    Oui elle fonctionne, j'ai réussi a faire un backup de mon container docker qui a comme fonction d'être un SqlServeur

    Peux-tu nous dire si cette commande "toute simple" (sic!) fonctionne toute seule?

    C'est-à-dire, que se passe-t-il si tu remplaces la dernière ligne de ton script par celle que tu donnes (sans passer par $CMDLINE_COMPLET), comme ceci (en protégeant toutes les variables par des guillemets, comme il se doit):
    (J'ai enlevé les echo pour simplifier la lecture)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #!/bin/bash
    HOST="localhost"
    LOGIN="SA"
    PASSWORD="MOTDEPASSE"
    DATABASE="vega"
    DATEBACKUP=$(date +%Y-%m-%d-%H.%M.%S)
    docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S "${HOST}" -U "${LOGIN}" -P "${PASSWORD}" -Q "BACKUP LOG WITH NORECOVERY DATABASE [${DATABASE}] TO DISK = N'/var/opt/mssql/backup/MSSQL_${DATABASE}-${DATEBACKUP}.bak' WITH NOFORMAT, NOINIT, NAME = '${DATABASE}', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
    j'obtiens ce message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Msg 156, Level 15, State 1, Server 024a1a9162e1, Line 1
    Incorrect syntax near the keyword 'WITH'.
    Msg 319, Level 15, State 1, Server 024a1a9162e1, Line 1
    Incorrect syntax near the keyword 'with'. If this statement is a common table expression, an xmlnamespaces clause or a change tracking context clause, the previous statement must be terminated with a semicolon.
    merci des reponses !

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par stephane86 Voir le message
    j'obtiens ce message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Msg 156, Level 15, State 1, Server 024a1a9162e1, Line 1
    Incorrect syntax near the keyword 'WITH'.
    Msg 319, Level 15, State 1, Server 024a1a9162e1, Line 1
    Incorrect syntax near the keyword 'with'. If this statement is a common table expression, an xmlnamespaces clause or a change tracking context clause, the previous statement must be terminated with a semicolon.
    On n'a plus l'erreur de "docker", ni l'erreur de "Sqlcmd"!
    Je dirais donc qu'on a progressé!

    Mais, du coup, ce n'est plus un problème "shell", mais un problème sql, me semble-t-il...

    Oui elle fonctionne, j'ai réussi a faire un backup de mon container docker qui a comme fonction d'être un SqlServeur
    Pourrais-tu nous montrer la ligne précise de commande (sans les password, évidemment) avec laquelle tu as réussi à faire ton backup, afin que nous puissions comparer avec la version en script et déterminer quelle différence fait échouer la commande?

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    merci de la réponse !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    stretch@DebianStretch:~$ docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'PASSWORD' -Q "BACKUP DATABASE [vega] TO DISK = N'/var/opt/mssql/backup/vega_5.bak' WITH NOFORMAT, NOINIT, NAME = 'vega', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
    11 percent processed.
    20 percent processed.
    31 percent processed.
    40 percent processed.
    51 percent processed.
    60 percent processed.
    70 percent processed.
    81 percent processed.
    90 percent processed.
    Processed 432 pages for database 'vega', file 'vega' on file 1.
    100 percent processed.
    Processed 2 pages for database 'vega', file 'vega_log' on file 1.
    BACKUP DATABASE successfully processed 434 pages in 0.410 seconds (8.269 MB/sec).
    stretch@DebianStretch:~$

  8. #8
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par stephane86 Voir le message
    merci de la réponse !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    stretch@DebianStretch:~$ docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'PASSWORD' -Q "BACKUP DATABASE [vega] TO DISK = N'/var/opt/mssql/backup/vega_5.bak' WITH NOFORMAT, NOINIT, NAME = 'vega', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
    Hum...

    Ne connaissant ni "docker" ni "sqlcmd" et vu mes faibles (et très anciennes) connaissances en SGDB, ça va pas être simple pour moi.

    Le message d'erreur parle du mot-clé "with".
    Or, la seule différence que je vois (sans rien comprendre) est l'ajout de "LOG WITH NORECOVERY" dans la commande qui ne marche pas.
    Je ne saurais dire si c'est la source de l'erreur.

    Pour aller un peu plus loin, que se passe-t-il si tu te rapproches au plus près de la commande qui marche (c'est-à-dire en supprimant "LOG WITH NORECOVERY" et en gardant la ligne "echo" pour debug):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #!/bin/bash
    HOST="localhost"
    LOGIN="SA"
    PASSWORD="MOTDEPASSE"
    DATABASE="vega"
    DATEBACKUP=$(date +%Y-%m-%d-%H.%M.%S)
     
    echo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S "${HOST}" -U "${LOGIN}" -P "${PASSWORD}" -Q "BACKUP DATABASE [${DATABASE}] TO DISK = N'/var/opt/mssql/backup/MSSQL_${DATABASE}-${DATEBACKUP}.bak' WITH NOFORMAT, NOINIT, NAME = '${DATABASE}', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
     
    docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S "${HOST}" -U "${LOGIN}" -P "${PASSWORD}" -Q "BACKUP DATABASE [${DATABASE}] TO DISK = N'/var/opt/mssql/backup/MSSQL_${DATABASE}-${DATEBACKUP}.bak' WITH NOFORMAT, NOINIT, NAME = '${DATABASE}', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
    Sinon, à tout hasard, serait-il possible que le script contienne des caractères invisibles (genre édité sous windoze)?
    Tu peux le vérifier avec cat -v monscript.

    Ensuite, ça dépasse mes capacités et ce n'est probablement plus le bon forum...

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    stretch@DebianStretch:~/scripts/backup/mssql$ ./backup_mssql.sh 
    Processed 432 pages for database 'vega', file 'vega' on file 1.
    Processed 2 pages for database 'vega', file 'vega_log' on file 1.
    BACKUP DATABASE successfully processed 434 pages in 0.301 seconds (11.264 MB/sec).
    ça a l'air d'avoir fonctionner ! merci

    j'ai mis cette ligne a la fin de mon script:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S "${HOST}" -U "${LOGIN}" -P "${PASSWORD}" -Q "BACKUP DATABASE [${DATABASE}] TO DISK = N'/var/opt/mssql/backup/MSSQL_${DATABASE}-${DATEBACKUP}.bak'"
    reste à tester la fonction restore si ça fonctionne toujours

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    ça ne fonctionne pas, le with est probablement important

    car quand j'essai de restore j'ai ce message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    1> RESTORE DATABASE vega FROM DISK = '/var/opt/mssql/backup/MSSQL_vega-2017-11-09-11.56.02.bak'
    2> WITH REPLACE
    3> GO
    Msg 3101, Level 16, State 1, Server 024a1a9162e1, Line 1
    Exclusive access could not be obtained because the database is in use.
    Msg 3013, Level 16, State 1, Server 024a1a9162e1, Line 1
    RESTORE DATABASE is terminating abnormally.
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    1> RESTORE DATABASE vega FROM DISK = '/var/opt/mssql/backup/MSSQL_vega-2017-11-09-11.56.02.bak'
    2> GO
    Msg 3101, Level 16, State 1, Server 024a1a9162e1, Line 1
    Exclusive access could not be obtained because the database is in use.
    Msg 3013, Level 16, State 1, Server 024a1a9162e1, Line 1
    RESTORE DATABASE is terminating abnormally.
    1>
    pourtant j'ai tout coupé (container docker qui héberge en serveur asp.net core 2.0, et mes connexions à la bdd)

  11. #11
    Expert éminent sénior
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 476
    Points : 11 051
    Points
    11 051
    Par défaut
    Citation Envoyé par stephane86 Voir le message
    pourtant j'ai tout coupé (container docker qui héberge en serveur asp.net core 2.0, et mes connexions à la bdd)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Exclusive access could not be obtained because the database is in use.
    Sans être spécialiste base de données non plus, il semble que des contraintes supplémentaires existent :

    La récupération se fait avec la commande RESTORE, en ayant pris soins au préalable de supprimer toute connexion sur la base à remonter. Contrairement à la sauvegarde, la récupération requiert - on peut s'en douter - un accès exclusif à la base.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    USE master
    GO
    SELECT 'kill',spid 
    FROM sysprocesses 
    WHERE dbid=db_id('MaBase')
    GO
    /* Exécution de l'output de la commande ci-dessus afin de libérer la base */
    GO
    RESTORE DATABASE MaBase FROM DISK=N'D:\BACKUP\MaBase.bak'
    GO
    Source : http://fadace.developpez.com/mssql/sauve/#LIII-B
    Déplacement, sauvegardes et restauration de bases sous MS-SQL Server
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/11/2010, 14h25
  2. Script tout simple avec GreaseMonkey
    Par jpascal dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/06/2007, 11h25
  3. Script tout simple qui ne marche pas sous IE
    Par Bleuarff dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/02/2007, 18h48
  4. script de sauvegarde de base de données dans VB.net
    Par bathis_dev dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 07/02/2007, 12h16
  5. Pb sur un script tout simple !
    Par ladybird dans le forum Langage
    Réponses: 12
    Dernier message: 06/12/2006, 21h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo