Jump to content
  • 0

Почему не создаётся БД?!


Glebr
 Share

Question

Подскажите пожалуйста почему не создаётся БД, вот код -

<?php
$linkID = mysql_connect('localhost', 'root', 'dbpass');
'CREATE DATABASE "new_db"'; echo "aaa";
mysql_select_db('new_db');
$query = "CREATE TABLE new_table (id int not null auto_increment primary key, new_col VARCHAT(25))";
$result = mysql_query($query);
?>

Link to comment
Share on other sites

16 answers to this question

Recommended Posts

  • 0

а это что???

<?php

$linkID = mysql_connect('localhost', 'root', 'dbpass');

'CREATE DATABASE "new_db"'; echo "aaa";

mysql_select_db('new_db');

$query = "CREATE TABLE new_table (id int not null auto_increment primary key, new_col VARCHAT(25))";

$result = mysql_query($query);

?>

разве так посылаются запросы к базе?

Link to comment
Share on other sites

  • 0
Да, так написано в phpmyadmin... хотя я это сам исправил, иначе код не выполнялся

Во-первых: надо было не в phpmyadmin смотреть, а в справочник по php. Для посылки запроса на создание бд в пхп нужно вызвать ф-цию и передать ей запрос, а не писать запрос где попало.

А во-вторых, для создания бд в пхп есть специальная функция, можно обойтись даже без запросов.

А в третьих, запрос CREATE DATABASE "new_db" даже твой любимый phpmyadmin не принимает, потому что он не верный.

Link to comment
Share on other sites

  • 0
Во-первых: надо было не в phpmyadmin смотреть, а в справочник по php. Для посылки запроса на создание бд в пхп нужно вызвать ф-цию и передать ей запрос, а не писать запрос где попало.

А во-вторых, для создания бд в пхп есть специальная функция, можно обойтись даже без запросов.

А в третьих, запрос CREATE DATABASE "new_db" даже твой любимый phpmyadmin не принимает, потому что он не верный.

Так весь этот код из справочника, кроме мною ихменённого CREATE DATABASE...

А не могли бы вы привести пример такой функции?

VARCHAR

ах, да :)

Но БД всё равно не создаётся...

Link to comment
Share on other sites

  • 0
Так весь этот код из справочника, кроме мною ихменённого CREATE DATABASE...

А не могли бы вы привести пример такой функции?

советую почитать какой-нибудь нормальный самоучитель по пхп (вот первый попавшийся), в котором доходчиво объяснят про основы программирования вообще и программирования на пхп в частности. И только после этого советую исправлять примеры, приведенные в справочниках.

Link to comment
Share on other sites

  • 0
а какую ошибку выдаёт?

в том то и дело, НИКАКОЙ! :)

При этом база не создайтся...

советую почитать какой-нибудь нормальный самоучитель по пхп (вот первый попавшийся), в котором доходчиво объяснят про основы программирования вообще и программирования на пхп в частности. И только после этого советую исправлять примеры, приведенные в справочниках.

Читал, да и в примере я исправил токо потому что не работало

Link to comment
Share on other sites

  • 0
Читал, да и в примере я исправил токо потому что не работало

блин, ну никогда не любил разъяснять основы незнающим людям. Это как рассказывать слепому о свете: он все равно его не видит и не может оценить и понять всей красоты этого.

В языках программирования есть такое понятие как функция. Функция - это заранее написанный код, который можно использовать впоследствии. Вот пример функции:

function hello($name){
echo 'Hello '.$name;
}
// потом где-нибудь в коде можно вызвать функцию, передав ей параметры:
hello('xPoint');
//выведет Hello xPoint

Так вот таких функций в пхп многие множества. Не веришь, можешь в справочнике посмотреть.

Есть такая группа функций, которые обеспечивают работу с СУРБД (Система Управления Реляционными Базами Данных) mysql.

Есть различные функции, но одна, наиболее часто используемая - это mysql_query

Вот ее полное объявление:

resource mysql_query ( string query [, resource link_identifier] )

Эта функция предназначена для посылки запросов к СУРБД. Ей передается текст запроса (запросы типа SELECT, INSERT,UPDATE, практически все запросы). А она возвращает ресурс результата. По этому ресурсу можно получить данные результата запроса (если они отличны от логических значений).

Так вот в твоем коде такая проблема:

для того, чтобы послать запрос на создание бд, нужно вызвать функцию, которая пошлет запрос, а не просто писать текст запроса где попало.

Да, ты правильно догадался, вместо простого текста запроса CREATE DATABASE `new_db`

нужно вызвать функцию mysql_query, которая отошлет запрос. И ей передать текст запроса. Т.е. это будет выглядеть так:

myqsl_query('CREATE DATABASE `new_db`');

И только в этом случае будет создана база данных new_db

Link to comment
Share on other sites

  • 0
блин, ну никогда не любил разъяснять основы незнающим людям. Это как рассказывать слепому о свете: он все равно его не видит и не может оценить и понять всей красоты этого.

В языках программирования есть такое понятие как функция. Функция - это заранее написанный код, который можно использовать впоследствии. Вот пример функции:

function hello($name){
echo 'Hello '.$name;
}
// потом где-нибудь в коде можно вызвать функцию, передав ей параметры:
hello('xPoint');
//выведет Hello xPoint

Так вот таких функций в пхп многие множества. Не веришь, можешь в справочнике посмотреть.

Есть такая группа функций, которые обеспечивают работу с СУРБД (Система Управления Реляционными Базами Данных) mysql.

Есть различные функции, но одна, наиболее часто используемая - это mysql_query

Вот ее полное объявление:

Эта функция предназначена для посылки запросов к СУРБД. Ей передается текст запроса (запросы типа SELECT, INSERT,UPDATE, практически все запросы). А она возвращает ресурс результата. По этому ресурсу можно получить данные результата запроса (если они отличны от логических значений).

Так вот в твоем коде такая проблема:

для того, чтобы послать запрос на создание бд, нужно вызвать функцию, которая пошлет запрос, а не просто писать текст запроса где попало.

Да, ты правильно догадался, вместо простого текста запроса CREATE DATABASE `new_db`

нужно вызвать функцию mysql_query, которая отошлет запрос. И ей передать текст запроса. Т.е. это будет выглядеть так:

myqsl_query('CREATE DATABASE `new_db`');

И только в этом случае будет создана база данных new_db

Почему это я незнающий?! Что такое функция- это я точно знаю. Конечно, я ток изучаю PHP, но всёже.

Спасибо за разъяснение, ща попробую! :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy