2
respostas

Não reconhecido com comando interno

Estou tendo o seguinte erro ao excutar o script php:

'INSERT' não é reconhecido como um comando interno ou externo, um programa operável ou um arquivo em lotes. PHP Warning: A non-numeric value encountered in C:\Apache24\htdocs\Projects\Formacao-PHP\php-pdo-projeto-inicial\inserir-aluno.php on line 14

Warning: A non-numeric value encountered in C:\Apache24\htdocs\Projects\Formacao-PHP\php-pdo-projeto-inicial\inserir-aluno.php on line 14 int(1)

Tenho servidor MySQL instalado e também instalei o SQLite. Ambos estãp configurados nas variáveis de ambiente. Alguém poderia me ajudar? Detalhe que o comando Create funcionou.

2 respostas

Olá Thiago, boa noite.

Me parece que você está tentando calcular algum valor que não é NUMÉRICO.

Você consegue enviar uma parte do código, para darmos uma olhada?

Abraços e bons estudos!

É de um exercício do curso de PDO.

Temos o arquivo de conexão com o banco que cria a tabela. $path = __DIR__ . '/banco.sqlite'; $pdo = new PDO('sqlite:' . $path);

$pdo->exec('CREATE TABLE students (id INTEGER PRIMARY KEY, name TEXT, birth_date TEXT);');

O arquivo que eu tento rodar no cmd do Windows 10.

use Alura\Pdo\Domain\Model\Student; require_once 'vendor/autoload.php';

$path = __DIR__ . '/banco.sqlite'; $pdo = new PDO('sqlite:' . $path);

$student = new Student(null, 'Thiago Araujo', new \DateTimeImmutable('1987-01-19'));

$pdo-exec("INSERT INTO students (name, birth_date) VALUES ('{$student->name()}', '{$student->birthDate()->format('Y-m-d')}');");