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

Форум MySQL

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

 

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

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

тема: Создание и проверка наличия базы данных.
 
 автор: agnostic   (12.02.2007 в 22:38)   письмо автору
 
 

Знаю, что вопрос глупый, но все таки, как создать и проверить наличие базы данных.
У меня установлен на локальной машине, apache+php+mysql.
Причем mysql работает, так как при переходе по ссылке mysql.php оно как и нужно выдает версию.
Но когда я записываю скрипт для создания базы
datebase.php

<?php
CREATE DATABASE forum
;
?>

И просмотра существующих баз данных
show.php

<?php
Show databases
;
?>

и после захажу через браузер, то собстенно ничего не выдает.

   
 
 автор: Trianon   (12.02.2007 в 23:53)   письмо автору
 
   для: agnostic   (12.02.2007 в 22:38)
 

В языке php нет операторов

CREATE DATABASE forum; 
Show databases; 


Нет даже оператора

SELECT VERSION(); 


Тем не менее, версию MySQL Вы увидели.
Вот теперь разглядывайте mysql.php и пытайтесь понять, как Вы её получили.
Возможно, похожим образом Вам удастся выполнить и оставшиеся два оператора.
Языка SQL.


Прежде чем исполнять скрипты нужно хотя бы немножечко думать иногда.

   
 
 автор: agnostic   (13.02.2007 в 22:02)   письмо автору
 
   для: Trianon   (12.02.2007 в 23:53)
 

Спасибо за подсказку.
Скрипт показывающий версию был отдельный.
Просто в учебнике в главе sql я видел именно те скрипты, которые пытался испольнить, причем даже не скрипты, а отдельные команды типа
mysql> show databases
однако ничего не выходило. А верхней части работающего скрипта я в начале не встречал ($dblocation = "127.0.0.1";
$dbname = "test";
$dbuser = "root";
...)
Однако не смотря но то,что скрипт показывающий версию - работает, при добавлении в конец show databases, он перестает это делать. И обязательными ли, для любой базы являются верхние строки?

<?php   
  $dblocation 
"127.0.0.1";   
  
$dbname "test";   
  
$dbuser "root";   
  
$dbpasswd "";   

  
$dbcnx mysql_connect($dblocation$dbuser$dbpasswd);   
  if (!
$dbcnx)   
  {   
    echo 
"<p>К сожалению, не доступен сервер mySQL</p>";   
    exit();   
  }   
  if (!
mysql_select_db($dbname,$dbcnx) )   
  {   
    echo 
"<p>К сожалению, не доступна база данных</p>";   
    exit();   
  }   
  
$ver mysql_query("SELECT VERSION()");   
  if(!
$ver)   
  {   
    echo 
"<p>Ошибка в запросе</p>";   
    exit();   
  }   
  echo 
mysql_result($ver0);   
  
Show databases;
?> 

Извините, конечно за глупый вопрос, но я действительно не понимаю, почему при добавлении Show databases ничего не происходит. Даже версия не показывается.

   
 
 автор: Trianon   (13.02.2007 в 22:16)   письмо автору
 
   для: agnostic   (13.02.2007 в 22:02)
 

Потому что, еще раз говорю, Show databases; это не оператор языка php.

И в файл php его ставить бессмысленно. В результате php-скрипт всего лишь будет отвергнут из-за ошибки синтаксиса. До SQL-сервера дело вообще не дойдет.

Текст, который Вы показываете - это php-программа.
Строка, которую Вы пытаетесь присунуть - это SQL-оператор.

   
 
 автор: mehelson   (14.02.2007 в 12:35)   письмо автору
 
   для: Trianon   (13.02.2007 в 22:16)
 

Здравствуйте всем !

Я сам еще только начал работать с MySQL,
но мне кажется, уважаемый Trianon намекает вам
на использования функций "взаимодействия" PHP и MySQL.

Исходя из проверочного кода

<?php    
  $dblocation 
"127.0.0.1";    
  
$dbname "test";    
  
$dbuser "root";    
  
$dbpasswd "";    

  
$dbcnx mysql_connect($dblocation$dbuser$dbpasswd);    
  if (!
$dbcnx)    
  {    
//и так далее
?>

можно "предположить", что для передачи операторов SQL в коде PHP, нужно
и использовать эти функции...
вот например, для зацепки...

<?
$new_db 
"CREATE DATABASE new_database";
$add_db mysql_query($new_db);
?>


Рекомендую поинтересоваться изданиями авторов сайта.
Книжки отличные ! Приобрел 2 ...пока... "Самоучитель PHP5 -2 и Практика создания Web-сайтов"...
так дело пошло быстрее... в плане обучения...
Книжки замечательные ! Спасибо авторам !!!

Спасибо !

   
Rambler's Top100
вверх

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