Функция PHP INSERT INTO работает на локальном хосте, но не на моем веб-сервере [дубликат]

К сожалению, даже ваш «расточительный» код неверен. EPSILON - это наименьшее значение, которое можно добавить в 1.0 и изменить его значение. Значение 1.0 очень важно - при добавлении в EPSILON большее число не изменяется. Теперь вы можете масштабировать это значение до чисел, которые вы сравниваете, чтобы определить, являются ли они разными или нет. Правильное выражение для сравнения двух удвоений:

if (fabs(a - b) <= DBL_EPSILON * fmax(fabs(a), fabs(b)))
{
    // ...
}

Это минимально. В общем, однако, вы хотели бы учитывать шум в ваших расчетах и ​​игнорировать несколько наименее значимых бит, поэтому более реалистичное сравнение будет выглядеть следующим образом:

if (fabs(a - b) <= 16 * DBL_EPSILON * fmax(fabs(a), fabs(b)))
{
    // ...
}

Если эффективность сравнения очень важна вам и вы знаете диапазон своих значений, тогда вместо этого вы должны использовать числа с фиксированной запятой.

7
задан DzinX 3 February 2009 в 13:09
поделиться

6 ответов

Когда мне приходилось иметь дело с таблицами других людей с пробелами, это работало:

use `student registration`;

По крайней мере, это было бы ваше.

2
ответ дан comfroels 22 August 2018 в 04:05
поделиться

Вы должны попробовать использовать обратные тики ("` "), чтобы указать ваше имя базы данных. Вообще говоря, вероятно, лучше использовать соглашение об именах для устранения пробела, например

USE `StudentRegistration`;

или

USE `student_registration`;
21
ответ дан David Grant 22 August 2018 в 04:05
поделиться
  • 1
    Даже с пробелами лучше использовать эти обратные тики. Хороший ответ Дэвид. +1 – Joaobrunoah 25 August 2016 в 13:18

У вас есть два варианта.

1 Включение имени базы данных в обратные или одинарные кавычки.

USE `student registration`;
USE 'student registration';

2 Побег над символом пробела.

USE student\ registration;

Как ни странно, это создает.

ОШИБКА: Неизвестная команда '\'.

Но все равно изменяет базу данных.

11
ответ дан Mark 22 August 2018 в 04:05
поделиться

Используйте двойные кавычки вместо одиночных, двойных кавычек, сработанных для меня:

USE "student registration";
1
ответ дан prakhar londhe 22 August 2018 в 04:05
поделиться
  • 1
    Привет, я использовал все методы здесь, такие как «детали заказа». [Детали заказа] и «Детали заказа», но все они не работали, есть ли у вас подсказка? – Tomer 25 March 2018 в 21:59
-1
ответ дан Robert Columbia 22 August 2018 в 04:05
поделиться

Чтобы получить эту работу, вы должны использовать квадратные скобки:

Use [student registration]
-1
ответ дан zaengi 22 August 2018 в 04:05
поделиться
  • 1
    Я думаю, что это работает для SQL Server, а не для MySql. – TTRider 9 February 2015 в 02:15
Другие вопросы по тегам:

Похожие вопросы: