PHP MySQL не выполняет обновление с использованием подстроки - PullRequest
0 голосов
/ 25 июня 2018

У меня проблема с PHP, которая не выполняет ни одного запроса в моем скрипте. SQL-запрос хорошо работает в моей консоли MYSQL, но ничего не происходит. Столбец Year остается NULL:

$UpdateYear='UPDATE `pat` SET `Year` = SUBSTRING(`Prepa`,7,4)';
mysqli_query($connWarehouse,$UpdateYear) or   die(mysqli_error($connWarehouse)); 

Я не знаю, что я делаю неправильно. Вот полный скрипт:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$db="datawarehouse";

// Create connection
$connWarehouse = new mysqli($servername, $username, $password, $db);

// Check connection
if ($connWarehouse->connect_error) {
    die("Connection failed: " . $connWarehouse->connect_error);
}
$UpdateYear='UPDATE `pat` SET `Year` = SUBSTRING(`Prepa`,7,4)';
    mysqli_query($connWarehouse,$UpdateYear) or   die(mysqli_error($connWarehouse));

mysqli_close($connWarehouse));
?>

1 Ответ

0 голосов
/ 25 июня 2018

Мне наконец удалось решить.Я не знаю, если это правильный способ сделать это.Я должен открыть новое соединение с базой данных, чтобы выполнить.

alter.php:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$db="datawarehouse";

// Create connection
$connWarehouse = new mysqli($servername, $username, $password, $db);

// Check connection
if ($connWarehouse->connect_error) {
    die("Connection failed: " . $connWarehouse->connect_error);
}
$AddYear='ALTER TABLE `pat` ADD COLUMN `Year` YEAR;';
mysqli_query($connWarehouse,$AddYear) or die(mysqli_error($connWarehouse));

mysqli_close($connWarehouse));
include 'uppat.php';
?>

uppat.php

<?php
require_once 'config-datawarehouse.php';

$UpdateYear='UPDATE `pat` SET `Year` = SUBSTRING(`DatePrepa`,7,4)';

mysqli_query($conn,$UpdateYear) or die(mysqli_error($conn));

mysqli_close($conn);
?>

Таким образом он выполнил запрос на обновление.

...