Puncte:0

eroare la editarea unui articol (editare imposibilă)

drapel ru

În niste tabele (fie myisam, fie innodb) primesc această eroare:

COD: SELECTAȚI TOATE
Avertisment în ./libraries/classes/InsertEdit.php#1765
 implode(): argumente nevalide transmise

Backtrace

InsertEdit.php#1765: implode(
șir ',',
șirul „pro_doct”,
)
ReplaceController.php#312: PhpMyAdmin\InsertEdit->getCurrentValueForDifferentTypes(
boolean fals,
șirul „2ab6240bef8140b28277f912b86342bf”,
matrice,
șirul „\'\'',
matrice,
întreg 0,
matrice,
matrice,
matrice,
boolean fals,
boolean adevărat,
șir '`bibliografie`.`ID` = 2',
șir „bibliografie”,
matrice,
)
Routing.php#192: PhpMyAdmin\Controllers\Table\ReplaceController->__invoke(
,
matrice,
)
index.php#43: PhpMyAdmin\Routing::callControllerForRoute(
,
șirul „/table/replace”,
,
,
)

Și în phpmyadmin nu pot copie tabele dintr-o bază de date (locală) în alta (locală), așa cum am făcut întotdeauna. Acum pot doar export/import (fără mesaje de eroare).

Eu folosesc xampp pentru Linux.

Server: Localhost prin socket UNIX
Tip de server: MariaDB
Server de conexiune: SSL inactiv pentru documentare
Versiunea serverului: 10.4.17-MariaDB - Distribuție sursă
Versiunea protocolului: 10
Utilizare: root@localhost
Codificarea caracterelor serverului: cp1252 West European (latin1)
Server web: Apache/2.4.46 (Unix) OpenSSL/1.1.1i PHP/7.4.14 mod_perl/2.0.11 Perl/v5.32.0
Versiunea clientului bazei de date: libmysql - mysqlnd 7.4.14
Extensiune PHP: mysqli

Versiunea PHP: 7.4.14

EDITAȚI | ×

Am observat ca acum Nu pot crea vederi mai: linkul „creare vizualizare” nu mai funcționează.

EDITAȚI | ×

Întrebarea mea este: cum pot folosi consolă pentru a verifica ce fel de problemă există și cum se rezolva?

Puncte:1
drapel ua

Învață să folosești CLI „mysql”.

Pentru a copia date dintr-un tabel în altul (presupunând definiții de schemă compatibile):

INSERT INTO db2.t2 SELECT * FROM db1.t1;

Vizualizările există de mult timp. Ce versiune de MySQL folosești?

CREATE VIEW foo(a INT, b VARCHAR(22))
AS SELECT ...;

(Există și alte opțiuni; vezi https://dev.mysql.com/doc/refman/8.0/en/create-view.html .)

Atenție: Vizualizările MySQL sunt zahăr sintactic; nu vă așteptați la niciun beneficiu de performanță.

Întrebările SQL sunt tratate mai bine la stackoverflow.com.

Întrebările DBA sunt tratate mai bine la dba.stackexchange.com.

Duns avatar
drapel ru
Ne pare rău, dar de ce vizualizarea grafică nu mai funcționează? Până acum a funcționat fără probleme. Adică: am un *bug*.
Nikita Kipriyanov avatar
drapel za
Ai un bug, felicitări, iată cum să o eviți. Soluția propusă este complet corectă și validă. Învață SQL și învață cum să lucrezi cu nucleul RDBMS, nu cu clopotele și fluierele lor grafice fanteziste. ServerFault nu este locul unde trebuie raportate erorile software, de asemenea, această întrebare este în afara subiectului aici.
Matthew Ife avatar
drapel jo
@Duns Bug-ul există în codul pe care îl utilizați pentru a gestiona DB, nu MyISAM sau InnoDB. implode() este o funcție PHP, nu una SQL. Soluția este să nu folosiți PHP și să învățați SQL nativ. Puteți oricând să remediați singur eroarea sau să apelați la autorul codului / să plătiți autorul pentru a o remedia.
Duns avatar
drapel ru
Văd. Mulțumesc. Acum întrebarea mea este: ești absolut sigur că aici nu se pune problema deloc de _mysql_, ci, cel puțin, de php (sau javascript)? Cu alte cuvinte, pot fi sigur că această problemă nu este un simptom că datele mele mysql sunt corupte sau că există ceva în neregulă în serverul (sau client) mysql?
drapel ua
@Duns - Multe întrebări se răspândesc în mai multe categorii, sau solicitantul nu știe neapărat unde se află problema. (Cred că ServerFault este un loc prost pentru orice are legătură cu MySQL și este UI, dar oricum încerc să răspund la întrebări.) MySQL (în special Engine=InnoDB) în esență, nu corupă niciodată datele, așa că căutăm mai întâi alte cauze. Există 2 fișiere jurnal (...log și ...err) care _poate_ avea o idee. Dacă linkul eșuează, căutați pe web „mysql create view”.
Duns avatar
drapel ru
Deci, se pare că întrebarea mea este o.t. Prin urmare, l-aș șterge.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.