Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zmiana zapytania na mysql 5
Forum PHP.pl > Forum > Bazy danych > MySQL
noman1
jako że jestem nowy , WITAM BARDZO party.gif

czy może ktoś zmienić to zapytanie, żeby "chodziło" na mysql 5.0:

CODE
$print_catalog_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_image, p.products_model, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.products_status, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, m.manufacturers_name from " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_id = '" . $products_id . "' and p.products_id = pd.products_id and pd.language_id = '" . $languages_id . "'");


z góry dziękuję

wywala błąd:

1054 - Unknown column 'p.products_id' in 'on clause'

select p.products_id, pd.products_name, pd.products_description, p.products_image, p.products_model, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.products_status, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, m.manufacturers_name from products p left join manufacturers m on p.manufacturers_id = m.manufacturers_id, products_description pd left join specials s on p.products_id = s.products_id where p.products_id = '' and p.products_id = pd.products_id and pd.language_id = '4'
melkorm
a o strukture tabelek można prosić ? bo powoli mi się fusy kończą na wróżenie... ;D
noman1
TABLE_PRODUCTS:
`products_id` int(11) NOT NULL auto_increment,
`products_quantity` int(4) NOT NULL default '0',
`products_model` varchar(30) default NULL,
`products_image` varchar(64) default NULL,
`products_image_pop` varchar(64) default NULL,
`products_image_description` varchar(64) default NULL,
`products_price` decimal(15,4) NOT NULL default '0.0000',
`products_date_added` datetime NOT NULL default '0000-00-00 00:00:00',
`products_last_modified` datetime default NULL,
`products_date_available` datetime default NULL,
`products_weight` decimal(5,2) NOT NULL default '0.00',
`products_status` tinyint(1) NOT NULL default '0',
`products_tax_class_id` int(11) NOT NULL default '0',
`manufacturers_id` int(11) default NULL,
`products_ordered` int(11) NOT NULL default '0',

TABLE_MANUFACTURES:
`manufacturers_id` int(11) NOT NULL auto_increment,
`manufacturers_name` varchar(32) NOT NULL,
`manufacturers_image` varchar(64) default NULL,
`date_added` datetime default NULL,
`last_modified` datetime default NULL,

TABLE_PRODUCTS_DESCRIPTION:
`products_id` int(11) NOT NULL auto_increment,
`language_id` int(11) NOT NULL default '1',
`products_name` varchar(64) NOT NULL,
`products_description` text,
`products_url` varchar(255) default NULL,
`products_viewed` int(5) default '0',

TABLE_SPECIALS:
`specials_id` int(11) NOT NULL auto_increment,
`products_id` int(11) NOT NULL default '0',
`specials_new_products_price` decimal(15,4) NOT NULL default '0.0000',
`specials_date_added` datetime default NULL,
`specials_last_modified` datetime default NULL,
`expires_date` datetime default NULL,
`date_status_change` datetime default NULL,
`status` int(1) NOT NULL default '1',

nie wiem czy w takiej formie może być, zapytanie jest napisane pod MYSQL4 i .......wiadomo pod MYSQL5 sie wywraca, w każdym razie tak mi się zdaje że to wina wersji MYSQL sadsmiley02.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.