Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Создание префикса
 
 автор: admiral   (21.02.2009 в 13:29)   письмо автору
 
 

В базе дынных имеются таблицы. Нужно проставить к ним префикс. Как правильно это сделать? И как переписать конфигурационый файл подключения к БД, чтобы этот префикс не пришлось потом в каждый sql-запрос в скрипте переписывать.
Вот скрипт для подключенияк БД

<?php
  $dblocation 
"localhost";
  
$dbname "db_cms";
  
$dbuser "root";
  
$dbpasswd "";
  
$dbcnx mysql_connect($dblocation,$dbuser,$dbpasswd);
  
// конект
  
if (!$dbcnx) exit("Сервер базы данных недоступен");  
  
// выбираем БД
  
if (!mysql_select_db($dbname,$dbcnx)) exit("Произошла ошибка при выборе БД");
  
  @
mysql_query("SET NAMES 'cp1251'");

?>

  Ответить  
 
 автор: cheops   (21.02.2009 в 13:47)   письмо автору
 
   для: admiral   (21.02.2009 в 13:29)
 

Автоматически это сделать вряд ли получится, в любом случае SQL-запросы придется динамически формировать подставляя переменную с префиксом или имя таблицы из PHP-переменной.

  Ответить  
 
 автор: admiral   (21.02.2009 в 14:12)   письмо автору
 
   для: cheops   (21.02.2009 в 13:47)
 

Тоесть например делать так?
В конфигурационом файле прописывать
$prefix = "tbl1_";

А запрос делать так да? -


<?
$sql 
MYSQL_QUERY("SELECT  * FROM ".$prefix."table WHERE ....   ");
?>

  Ответить  
 
 автор: Trianon   (21.02.2009 в 15:05)   письмо автору
 
   для: admiral   (21.02.2009 в 14:12)
 

либо так.
<?
$sql 
MYSQL_QUERY("SELECT  * FROM {$prefix}table WHERE ....   ");


Но действовать будет только тогда, когда вызов окажется в области видимости $prefix

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования