Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: [mysql] errore #1210

  1. #1

    [mysql] errore #1210

    VVoVe: ehi gente, ho un problemino con mysql.
    ho letto il manuale, ma all'errore 1210 mi dice

    Codice PHP:
    Error1210 SQLSTATEHY000 (ER_WRONG_ARGUMENTSMessageIncorrect arguments to %

    VVoVe:


    che vuol dire??

  2. #2
    Vuol dire che hai un argomento errato nella cosa che hai fatto....

    hai forse mysql 4.1??? Dire l'errore senza dire quel che fai, equivale a dare una risposta e far indovinare la domanda.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    MySQL 3.23.56 in esecuzione su localhost ....

    ho fatto una query con MATCH .. AGAINST su 2 campi, indicizzati fulltext

  4. #4
    Originariamente inviato da kilio
    MySQL 3.23.56 in esecuzione su localhost ....

    ho fatto una query con MATCH .. AGAINST su 2 campi, indicizzati fulltext
    Hai usato BOOLEAN MODE??? MATCH ... AGAINST e' compatibile dalla 3.23.23 in su.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    no, la query l'ho fatta così..

    Codice PHP:
    SELECT test.idtest.oggettotest.testotest.data_posttit.idtit.titolotit.datatit.visitetit.rispostecat.idcat.status FROM forum_discussioni_titoli AS titforum_discussioni_testi AS testforum_cat AS cat WHERE MATCH (test.testotit.titoloAGAINST ('$ricerca') AND tit.status '2' AND cat.status ='1' ORDER BY test.data_post desc 

  6. #6
    Il problema dovrebbe essere che nella direttiva MATCH le colonne devono appartenere alla stessa tabella ed allo stesso indice fulltext


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    e quindi la MATCH su 2 tabelle non si puote fare...


    come risolvo?

  8. #8
    Originariamente inviato da kilio
    e quindi la MATCH su 2 tabelle non si puote fare...


    come risolvo?
    Io ripenserei un attimo le tabelle.... titolo e testo li considerei univoci e inscindibili, e percio' facenti parte della stessa tabella. Impossibile avere due testi con lo stesso titolo e viceversa.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    no, piero, la cosa è diversa:

    ti posto la struttura:

    Codice PHP:
    CREATE TABLE `forum_discussioni_titoli` (
      `
    idsmallint(8unsigned NOT NULL auto_increment,
      `
    cattinyint(2NOT NULL default '1',
      `
    useridsmallint(6unsigned NOT NULL default '0',
      `
    datadatetime NOT NULL default '0000-00-00 00:00:00',
      `
    titolovarchar(50NOT NULL default '',
      `
    statustinyint(1NOT NULL default '0',
      `
    visiteint(5unsigned NOT NULL default '0',
      `
    ultimoscrittoresmallint(6unsigned NOT NULL default '0',
      `
    rispostesmallint(3NOT NULL default '0',
      
    PRIMARY KEY  (`id`),
      
    KEY `userid` (`userid`),
      
    KEY `cat` (`cat`),
      
    FULLTEXT KEY `titolo` (`titolo`)
    TYPE=MyISAM COMMENT='status = 1 bloccata, 2 cancellata, 0 attiva' AUTO_INCREMENT=452 ;

    CREATE TABLE `forum_discussioni_testi` (
      `
    idint(9unsigned NOT NULL auto_increment,
      `
    cattinyint(2NOT NULL default '0',
      `
    id_titolosmallint(6unsigned NOT NULL default '0',
      `
    useridsmallint(6unsigned NOT NULL default '0',
      `
    data_postdatetime NOT NULL default '0000-00-00 00:00:00',
      `
    oggettovarchar(50NOT NULL default '',
      `
    testotext NOT NULL,
      `
    firmatinyint(4NOT NULL default '0',
      `
    notificatinyint(1NOT NULL default '0',
      
    PRIMARY KEY  (`id`),
      
    KEY `id_titolo` (`id_titolo`),
      
    KEY `cat` (`cat`),
      
    FULLTEXT KEY `testo` (`testo`),
      
    FULLTEXT KEY `oggetto` (`oggetto`)
    TYPE=MyISAM COMMENT='tutti i testi dei post ai titoli' AUTO_INCREMENT=3496 
    la 1° riporta soltanto i titoli delle discussioni, che ovviamente sono identici agli oggetti (ovvero i titoli che può dare ogni utente nel rispondere) solo nel caso di apertura di una discussione..
    non posso purtroppo ripensare il database, altrimenti il capo m'uccide!



    cmq ho un altro errore...
    codice:
    Errore
    
    query SQL :  
    
    SELECT test.id, test.oggetto, test.testo, test.data_post, tit.id, tit.titolo, tit.data, tit.visite, tit.risposte, cat.id, cat.status
    FROM forum_discussioni_titoli AS tit, forum_discussioni_testi AS test, forum_cat AS cat
    WHERE MATCH (
    
    test.testo, test.oggetto
    )
    AGAINST (
    'Virtuale'
    ) AND tit.status < '2' AND cat.status = '1'
    ORDER BY test.data_post DESC 
    LIMIT 0 , 30 
    
    Messaggio di MySQL: 
    
    
    #1191 - Can't find FULLTEXT index matching the column list

    cosa posso fare??

  10. #10
    Originariamente inviato da piero.mac
    Il problema dovrebbe essere che nella direttiva MATCH le colonne devono appartenere alla stessa tabella ed allo stesso indice fulltext
    Mi quoto....

    FULLTEXT KEY `testo` (`testo`),
    FULLTEXT KEY `oggetto` (`oggetto`)

    Hai due indici diversi, mentre devi avere un solo indice fulltext con due campi.

    Cancelli un indice fulltext (es. oggetto) e poi la query sara' del tipo....

    ALTER TABLE `forum_discussioni_testi`
    DROP INDEX `testo` ,
    ADD FULLTEXT `testo` (`testo` , `oggetto`)

    Pero' non la posso provare, spero sia corretta. Dovresti trovarti con un indice di nome testo che comprende i due campi.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.