Visualizzazione dei risultati da 1 a 8 su 8

Discussione: problema query access

  1. #1

    problema query access

    Ciao, ho questo problema.
    Sto adattando un mio progetto, le cui informazioni sono salvate sul database mysql, in access.
    Ho problemi a scrivere questa query da sql ad access.
    in sql:
    $query_tab="CREATE TABLE IF NOT EXISTS `configurazione` (
    `id_conf` int(20) NOT NULL AUTO_INCREMENT,
    `nome_config` varchar(50),
    `descr_config` varchar(240),
    `nome_tab` varchar(60),
    `nome_campo` varchar(50),
    `pid` varchar(60),
    `abilita` int(2),
    `annotazione` varchar(250),
    `last_used` int(4),
    `value` int(4),
    `relazione` varchar(240),
    PRIMARY KEY (`id_conf`)
    ) ";
    In access come va riscritta?
    ho provato:
    $query_tab="CREATE TABLE IF NOT EXISTS configurazione (
    id_conf AUTOINCREMENT,
    nome_config TEXT(20),
    descr_config TEXT(20),
    nome_tab TEXT(20),
    nome_campo TEXT(20),
    pid TEXT(20),
    abilita TEXT(20),
    annotazione TEXT(20),
    last_used TEXT(20),
    valued TEXT(20),
    relazione TEXT(20))";
    $result_tab = odbc_exec($conn,$query_tab);


    ma da problemi:
    Warning: odbc_exec(): SQL error: [Microsoft][Driver ODBC Microsoft Access] Errore di sintassi nell'istruzione CREATE TABLE., SQL state 37000 in SQLExecDirect i

    Grazie per l'aiuto

  2. #2

  3. #3
    Grazie per la soluzione!

  4. #4
    in una select sempre sulla tabella discussa in precedenza ho questo errore:
    Warning: odbc_exec(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1., SQL state 07001 in SQLExecDirect in C:\Program Files (x86)\....

    il codice interessato è questo: $configurazione=$_SESSION['configurazione'];
    $query_5 = "SELECT * FROM configurazione WHERE nome_config='$configurazione' and valued <> 1";
    $result_5 = odbc_exec($conn,$query_5);un aiuto per capire cosa non va... valued è un campo del db che può essere 1 o 0 dipende dall'inserimento...
    GRAZIE!

  5. #5
    Utente di HTML.it L'avatar di comas17
    Registrato dal
    Apr 2002
    Messaggi
    6,522
    Se il campo "valued" è di tipo testo devi mettere gli apici ".... valued <> '1' ..."

    (ma soprattutto... se in mysql avevi campi di tipo numerico, perchè ore li hai trasformati in testo ? ti ritrovi dappertutto con il problema degli apici)

  6. #6
    okok, si hai ragione, i campi li avevo modificati per capire se dipendeva dal tipo... GRAZIE!

  7. #7
    nel campo del db "pid TEXT(20)," salvo la parola: pid5.1
    ho problemi in quanto la query non mi recupera nulla, la query è questa:
    $query_2 = "SELECT * FROM configurazione WHERE nome_config='$configurazione' and valued <> 1 and pid='PID5.1'";
    $result_2 = odbc_exec($conn,$query_2);
    se pongo invece pid=51 tutto funziona... dove sbaglio?

  8. #8
    In access non puoi dare un campo='stringa'
    ma devi usare

    SQL="select eccc where campo_stringa like & 'valore stringa' & "' ' "

    Ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.