Ошибка select from

I’m answering my own question because I have found the answer by myself.

Using EMS Sql Manager 2008 for SQL Server I executed select * from marcas and have no results, just errors. But If I recreated the table, voila, it just worked fine !!!

So the problem was the way I created the tables in the server. After a while, I realized the command that created the table in Foxpro using ODBC was:

oerr = sqlexec(oconn, "ALTER TABLE ["+xtabla+"] ADD ["+borrar.field_name+"] "+tipo_campo(borrar.field_type, borrar.field_len, borrar.field_dec),"")

so changed it to:

oerr = sqlexec(oconn, "ALTER TABLE ["+xtabla+"] ADD ["+alltrim(borrar.field_name)+"] "+tipo_campo(borrar.field_type, borrar.field_len, borrar.field_dec),"")

that is, I just deleted the extra spaces right after the table name.

Thats all, «codigo» is not equal to «codigo «.

Thanks to all of you who tried to help me.

I beleve

My code is throwing this error:

Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-contact-info' at line 1

my code:

<?php

    //connect
    $connection = mysqli_connect("myh","myu","myp","mydb") or die("Error " . mysqli_error($connection));

    //consultation: 
    $query = "SELECT * FROM web-contact-info"; 

    //execute the query. 
    $result = mysqli_query($connection, $query);
    if (!$result) {
        printf("Error: %sn", mysqli_error($connection));
        exit();
    }

    //display information: 
    while($row = mysqli_fetch_array($result)) { 
      echo $row["live_name"] . "<br>"; 
    } 

    ?>

I’ve tried to put quotes around web-contact-info and get a slightly different error:

Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''web-contact-info'' at line 1

What am I writing wrong?

Есть запрос:

SELECT * FROM (SELECT * FROM graph ORDER BY id DESC LIMIT 20) ORDER BY id ASC

. Им должны браться по порядку последние 20 записей. При выполнение выдает ошибку:

#1064 — У вас ошибка в запросе. Изучите документацию по используемой версии MariaDB на предмет корректного синтаксиса около ‘ORDER BY id ASC LIMIT 0, 25’ на строке 1

В чем моя ошибка?


  • Вопрос задан

    23 июл. 2022

  • 126 просмотров

Нужно задать alias

SELECT * FROM (SELECT * FROM graph ORDER BY id DESC LIMIT 20) AS graph ORDER BY id ASC

Только зачем нужен такой странный запрос, можно же одним селектом обойтись?

Пригласить эксперта


  • Показать ещё
    Загружается…

05 июн. 2023, в 22:21

1500 руб./за проект

05 июн. 2023, в 22:02

500 руб./за проект

05 июн. 2023, в 21:36

100000 руб./за проект

Минуточку внимания

За последние 24 часа нас посетили 12213 программистов и 918 роботов. Сейчас ищут 730 программистов …

Страница 1 из 2


  1. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    Почему то никак не получается вывести из базы данных никакую информацию. Вот код.

    1. $db = mysql_connect («localhost», «real_poz», «sddeee»);
    2. mysql_select_db («real_poz», $db);
    3. if ($db = 0) {echo «Не удалось подключится к серверу»;}
    4. else {echo «Соединение создано успешно»;}
    5. 16 cтрока            $result = mysql_query («SELECT * FROM `dle_post` WHERE `id`=’18’ «, $db);
    6. 17 cтрока            $myrow = mysql_fetch_array ($result);
    7. 18 cтрока            echo $myrow [«autor»];

    Соединяется с базой успешно. Но ничего не выводит. Пробовал разные варианты, то на одном из них выводил автора статьи и дату, а сейчас выдает ошибку:

    1. Соединение создано успешно
    2. Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in Z:homelocalhostwwwphpindex.php on line 16
    3. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:homelocalhostwwwphpindex.php on line 17

    Вроде все верно написал… Что не так делаю?


  2. Volos

    Volos
    Активный пользователь

    С нами с:
    25 июн 2011
    Сообщения:
    6
    Симпатии:
    0
    Адрес:
    Киев

    <body>
    <?php
    $db = mysql_connect («localhost», «real_poz», «sddeee»);
    mysql_select_db («real_poz», $db);
    if ($db == ‘true’) {echo «Не удалось подключится к серверу»;}
    else {echo «Соединение создано успешно»;}

    $result = mysql_query («SELECT * FROM dle_post WHERE id=’18’ «, $db);
    $myrow = mysql_fetch_array ($result);
    echo «$myrow [«autor»]»;


  3. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    Когда убрал

    и написал просто

    1. $result = mysql_query («SELECT * FROM dle_post», $db);

    — автор вывелся на странице, а ставлю конкретной новости

    — ничего не выводится… В чем же проблема?[/quote]


  4. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    Подсказали дописать часть кода для обработки ошибок:

    1. $db = mysql_connect («localhost», «realm461_pozdrav», «пароль»);
    2. mysql_select_db («realm461_pozdrav», $db);
    3. if ($db == ‘true’) {echo «Не удалось подключится к серверу»;}
    4. else {echo «Соединение создано успешно»;}
    5. $sql = mysql_query («SELECT * FROM dle_post WHERE id=`5993`», $db);
    6. $result = mysql_query($sql);
    7.   echo «Возникла ошибка — «.mysql_error().»<br>»;

    Теперь выводится на странице:

    1. Соединение создано успешно
    2. Возникла ошибка — Query was empty


  5. Gromo

    Gromo
    Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент

    1. $sql = «SELECT * FROM dle_post WHERE id=`5993`»;


  6. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    Поменял:

    1. $db = mysql_connect («localhost», «realm461_pozdrav», «пароль»);
    2. mysql_select_db («realm461_pozdrav», $db);
    3. if ($db == ‘true’) {echo «Не удалось подключится к серверу»;}
    4. else {echo «Соединение создано успешно»;}
    5. $sql = «SELECT * FROM dle_post WHERE id=`18`»;
    6. $result = mysql_query($sql, $db);
    7.   echo «Возникла ошибка — «.mysql_error().»<br>»;

    Теперь выдает:

    1. Соединение создано успешно
    2. Возникла ошибка — Unknown column ’18’ in ‘where clause’
    3. SELECT * FROM dle_post WHERE id=`18`

    Не пойму почему же пишет неизвестный столбец… Почему столбец, ведь из строки должен выбирать и столбца по id…
    В таблице строка с id=`18` — есть, да и менял опять же на разный id….


  7. Mamont

    Mamont
    Активный пользователь

    С нами с:
    5 дек 2010
    Сообщения:
    183
    Симпатии:
    0


  8. Mamont

    Mamont
    Активный пользователь

    С нами с:
    5 дек 2010
    Сообщения:
    183
    Симпатии:
    0

    про mysql_fetch не забыл?

    1. if (!$db) {echo «Не удалось подключится к серверу»;}      // !!!!
    2. else {echo «Соединение создано успешно»;}
    3. $sql = «SELECT * FROM dle_post WHERE id=’18′»;

    зы. Для оформления пхп кода используй тег PHP, а не CODE


  9. Elkaz

    Команда форума
    Модератор


  10. Gromo

    Gromo
    Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент

    realmen80
    а у тебя в таблице есть строка с айди = 18 ?


  11. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    Gromo — строка с айди = 18 есть, я менял и на другие…
    Elkaz поставил Ваш код:

    Вот что отобразилось на главной:

    Объясните, пожалуйста, синтаксис

    ? Єто что нужно вывести из таблицы все с полей 0 и 1?
    Меняю цыфры 1 и 0 и пишет — bool(false)…[/b]


  12. Elkaz

    Команда форума
    Модератор

    realmen80
    WHERE `id` > 0 замените на WHERE `id` = 18 LIMIT 1
    Нет. Это означает выбрать одну запись (LIMIT 1), где ID > 0


  13. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    Заменил. Теперь пишет — bool(false)… Почему же false, если в БД строка с айди 18 есть?


  14. ckjet

    ckjet
    Активный пользователь

    С нами с:
    6 апр 2011
    Сообщения:
    172
    Симпатии:
    2

    1.  $db = mysql_connect («localhost», «realm461_pozdrav», «1111111»);
    2.  if ($db == ‘true’) {echo «Не удалось подключится к серверу»;}
    3.  else {echo «Соединение создано успешно»;}
    4.  $sql = «SELECT * FROM dle_post where id=18»;

    Покажите результат


  15. ckjet

    ckjet
    Активный пользователь

    С нами с:
    6 апр 2011
    Сообщения:
    172
    Симпатии:
    2

    Функция mysql_fetch_assoc возвращает только ассоциативный массив. Если вам нужны как ассоциативные, так и численные индексы в массиве, обратитесь к функции mysql_fetch_array(). Думаю проблемма у вас именно в этом, странно что до меня не нашли


  16. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    ckjet, вот что отобразилось на главной:
    Только это вывелась какая-то новость движка самого… Я естественно такой новости не добавлял. А своей новости ни одной не получается вывести… :(


  17. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    ckjet, я ошибся. То не по вашему коду вывело, а по коду:

    1. $Handler = mysql_connect (‘localhost’, ‘realm461_pozdrav’, ‘CVlcEm5G’) or die (mysql_error());
    2.  mysql_select_db (‘realm461_pozdrav’) or die (mysql_error());
    3. $Query = mysql_query (‘SELECT * FROM `dle_post` WHERE `id` > 0 LIMIT 1’) or die (mysql_error());
    4. $Row = mysql_fetch_assoc ($Query);

    Вот вставил предложенный Вами и вот что получилось:

    1. Warning: mysql_connect() [function.mysql-connect]: Access denied for user ‘realm461_pozdrav’@’localhost’ (using password: YES) in Z:homelocalhostwwwphpindex.php on line 13
    2. Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in Z:homelocalhostwwwphpindex.php on line 14
    3. Соединение создано успешно
    4. Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in Z:homelocalhostwwwphpindex.php on line 18
    5. Возникла ошибка — Access denied for user ‘realm461_pozdrav’@’localhost’ (using password: YES)
    6. SELECT * FROM dle_post where id=18


  18. ckjet

    ckjet
    Активный пользователь

    С нами с:
    6 апр 2011
    Сообщения:
    172
    Симпатии:
    2

    Вы мне покажите содержимое массива $row а не что выводится на главной


  19. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    Начинаю только изучать… Как я могу его показать Вам?


  20. ckjet

    ckjet
    Активный пользователь

    С нами с:
    6 апр 2011
    Сообщения:
    172
    Симпатии:
    2

    <?php
    $db = mysql_connect («localhost», «realm461_pozdrav», «1111111»);
    mysql_select_db («realm461_pozdrav», $db);
    if ($db == ‘true’) {echo «Не удалось подключится к серверу»;}
    else {echo «Соединение создано успешно»;}
    $sql = «SELECT * FROM dle_post where id=18»;
    $result = mysql_query($sql, $db);
    echo «<br>»;
    if(!$result)
    {
    echo «Возникла ошибка — «.mysql_error().»<br>»;
    echo $sql;
    exit();
    }
    $row = mysql_fetch_array( $result );
    echo ‘Содержимое массива:<pre>’;
    print_r( $row );
    echo ‘</pre>’;
    ?>

    Покажите результат чтоб увидеть нужно зайти на страницу в которой этот код


  21. realmen80

    realmen80
    Активный пользователь

    С нами с:
    30 июн 2011
    Сообщения:
    22
    Симпатии:
    0

    На денвере создана страница index.php

    1. <!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN» «http://www.w3.org/TR/html4/loose.dtd»>
    2. <meta http-equiv=»Content-Type» content=»text/html; charset=windows-1251″>
    3. <title>Главная страница сайта</title>
    4. <link href=»style.css» rel=»stylesheet» type=»text/css»>
    5. $db = mysql_connect («localhost», «realm461_pozdrav», «1111111»);
    6. mysql_select_db («realm461_pozdrav», $db);
    7. if ($db == ‘true’) {echo «Не удалось подключится к серверу»;}
    8. else {echo «Соединение создано успешно»;}
    9. $sql = «SELECT * FROM dle_post where id=18»;
    10. $result = mysql_query($sql, $db);
    11. echo «Возникла ошибка — «.mysql_error().»<br>»;
    12. $row = mysql_fetch_array( $result );
    13. echo ‘Содержимое массива:<pre>’;

    Когда в браузере захожу на страницу index.php, то мне отображается только текст:

    1. Соединение создано успешно

    Вот и все. И больше ничего не выводится…. А почему — загадка…


  22. ckjet

    ckjet
    Активный пользователь

    С нами с:
    6 апр 2011
    Сообщения:
    172
    Симпатии:
    2

    1. $db = mysql_connect («localhost», «realm461_pozdrav», «1111111»);
    2. if ($db == ‘true’) {echo «Не удалось подключится к серверу»;}
    3. else {echo «Соединение создано успешно»;}
    4. $sql = «SELECT * FROM dle_post»;
    5. echo ‘Содержимое массива:<pre>’;

    Покажите результат этого

Страница 1 из 2

Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.

Активные темы Темы без ответов

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

1 2011-06-30 11:13:20

  • realmen80
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2011-06-30
  • Сообщений: 3

Тема: Не работает SELECT * FROM

Почему то никак не получается вывести из базы данных никакую информацию. Вот код.

<body>
<?php
$db = mysql_connect ("localhost", "real_poz", "sddeee");
mysql_select_db ("real_poz", $db);
if ($db = 0) {echo "Не удалось подключится к серверу";}
else {echo "Соединение создано успешно";}

16 cтрока            $result = mysql_query ("SELECT * FROM `dle_post` WHERE `id`='18' ", $db);
17 cтрока            $myrow = mysql_fetch_array ($result);
18 cтрока            echo $myrow ["autor"];
?>
</body>

Соединяется с базой успешно. Но ничего не выводит. Пробовал разные варианты, то на одном из них выводил автора статьи и дату, а сейчас выдает ошибку:

Соединение создано успешно
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in Z:homelocalhostwwwphpindex.php on line 16
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:homelocalhostwwwphpindex.php on line 17

Вроде все верно написал… Что не так делаю?

2 Ответ от realmen80 2011-06-30 12:20:00

  • realmen80
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2011-06-30
  • Сообщений: 3

Re: Не работает SELECT * FROM

Подсказали дописать часть кода для обработки ошибок:

<?php
$db = mysql_connect ("localhost", "realm461_pozdrav", "пароль");
mysql_select_db ("realm461_pozdrav", $db);
if ($db == 'true') {echo "Не удалось подключится к серверу";}
else {echo "Соединение создано успешно";}
$sql = mysql_query ("SELECT * FROM dle_post WHERE id=`5993`", $db);
$result = mysql_query($sql);
echo "<br>";
if(!$result)
{
  echo "Возникла ошибка - ".mysql_error()."<br>";
  echo $sql;
  exit();
}
?>

Теперь выводится на странице:

Соединение создано успешно
Возникла ошибка - Query was empty

3 Ответ от Hanut 2011-06-30 14:36:50

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,726

Re: Не работает SELECT * FROM

Попробуйте так:

<?php
$db = mysql_connect ("localhost", "realm461_pozdrav", "пароль");
mysql_select_db ("realm461_pozdrav", $db);
if (!$db) {echo "Не удалось подключится к серверу";}
else {echo "Соединение создано успешно";}
$result = mysql_query ("SELECT * FROM `dle_post` WHERE `id`='5993'", $db);
echo "<br>";
if(!$result)
{
  echo "Возникла ошибка - ".mysql_error()."<br>";
  echo $sql;
  exit();
} else {
  $myrow = mysql_fetch_array ($result);
  echo $myrow ["autor"];
}
?>

4 Ответ от realmen80 2011-06-30 14:48:10

  • realmen80
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2011-06-30
  • Сообщений: 3

Re: Не работает SELECT * FROM

Просто пишет «Соединение создано успешно» и ничего не выводит больше….  sad

5 Ответ от Hanut 2011-06-30 19:37:38

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,726

Re: Не работает SELECT * FROM

Попробуйте так:
if (!$myrow = mysql_fetch_array ($result)) echo «Возникла ошибка — «.mysql_error().»<br>»;

Сообщения 5

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Понравилась статья? Поделить с друзьями:
  • Ошибка select command denied to user
  • Ошибка select certificate
  • Ошибка sel стиральная машина горенье
  • Ошибка sel на стиральной машине атлант
  • Ошибка sdbl ожидается выражение pos 112