Lỗi MySQL cột khóa 1072 không tồn tại trong bảng

Tôi đã chạy lại điều này nhiều lần, mỗi lần đều kích hoạt DB. Mỗi mô-đun được yêu cầu cài đặt tốt mà không có lỗi, điều này xảy ra sau khi tôi bật đa phiên bản. Như tôi đã nói ở trên, điều này xảy ra trong phiên bản beta2 cũng như các phiên bản dev hiện tại

Hơn nữa, khi tôi gỡ cài đặt mô-đun (một lần nữa, ngay sau đó)

$ drush pm-uninstall multiversion
The following extensions will be uninstalled: multiversion
Do you really want to continue? (y/n): y
Drupal\Core\Extension\ModuleUninstallValidatorException: The following reasons prevent the modules from being uninstalled: There is  [error]
content for the entity type: Workspace. Remove workspace entities. in
/apps/drupal/d8root/core/lib/Drupal/Core/Extension/ModuleInstaller.php:354
Stack trace:
#0 /apps/drupal/d8root/core/lib/Drupal/Core/ProxyClass/Extension/ModuleInstaller.php(91):
Drupal\Core\Extension\ModuleInstaller->uninstall(Array, true)
#1 phar:///usr/local/bin/drush/commands/core/drupal/environment.inc(227):
Drupal\Core\ProxyClass\Extension\ModuleInstaller->uninstall(Array)
#2 phar:///usr/local/bin/drush/commands/core/drupal/pm_8.inc(79): drush_module_uninstall(Array)
#3 phar:///usr/local/bin/drush/commands/pm/pm.drush.inc(1250): _drush_pm_uninstall(Array)
#4 phar:///usr/local/bin/drush/includes/command.inc(422): drush_pm_uninstall('multiversion')
#5 phar:///usr/local/bin/drush/includes/command.inc(231): _drush_invoke_hooks(Array, Array)
#6 phar:///usr/local/bin/drush/includes/command.inc(199): drush_command('multiversion')
#7 phar:///usr/local/bin/drush/lib/Drush/Boot/BaseBoot.php(67): drush_dispatch(Array)
#8 phar:///usr/local/bin/drush/includes/preflight.inc(66): Drush\Boot\BaseBoot->bootstrap_and_dispatch()
#9 phar:///usr/local/bin/drush/includes/startup.inc(458): drush_main()
#10 phar:///usr/local/bin/drush/includes/startup.inc(365): drush_run_main(false, '/', 'Phar detected. ...')
#11 phar:///usr/local/bin/drush/drush(114): drush_startup(Array)
#12 /usr/local/bin/drush(10): require('phar:///usr/loc...')
#13 {main}

Tất nhiên, tôi có thể điều hướng đến quản trị viên/mô-đun/gỡ cài đặt/thực thể/không gian làm việc và xác nhận mong muốn xóa loại thực thể của mình;

Thay đổi trình tự truy vấn của bạn và thử cách sau.
CREATE TABLE users (id INT UNSIGNED NOT NULL AUTO_INCREMENT, ign VARCHAR(100), email VARCHAR(255) NOT NULL, password VARCHAR(100) NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id));

CREATE TABLE purchase (id INT UNSIGNED NOT NULL AUTO_INCREMENT, price FLOAT NOT NULL DEFAULT 0, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id));

CREATE TABLE items(id INT UNSIGNED NOT NULL AUTO_INCREMENT,name VARCHAR(255) NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id), FOREIGN KEY fk_purchase_id (id) REFERENCES purchase(id));

CREATE TABLE transaction (id INT UNSIGNED NOT NULL AUTO_INCREMENT, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id), FOREIGN KEY fk_item_id (id) REFERENCES users(id));
Bạn đang cố thiết lập Khóa ngoại trên một cột mà bạn chưa tạo. Thử cái này.
CREATE TABLE Driver (
DriverID int(11) NOT NULL AUTO_INCREMENT,
UserID int,
CarID int,
PRIMARY KEY (DriverID),
FOREIGN KEY (UserID) REFERENCES User (UserID),
FOREIGN KEY (CarID) REFERENCES Car (CarID)
)ENGINE=INNODB;

Mã lỗi 1072 trong mysql là gì?

Không thể tạo Khóa ngoại (ERROR 1072)

Làm cách nào để thêm khóa ngoại vào bảng hiện có trong MySQL?

Sau đây là cú pháp của câu lệnh ALTER TABLE để thêm khóa ngoại vào bảng hiện có. .
THAY ĐỔI BẢNG tên_bảng
THÊM [CONSTRAINT [ký hiệu]] KHÓA NGOẠI
[tên_chỉ_số] (tên_cột,. )
THAM KHẢO tên_bảng (tên_cột,. )
BẬT XÓA tham chiếuTùy chọn
TRÊN CẬP NHẬT tham chiếuTùy chọn

Tại sao khóa ngoại không hoạt động?

Loại dữ liệu không khớp . Ví dụ: nếu cột tham chiếu mà bạn đang khai báo khóa ngoại sử dụng kiểu dữ liệu INT thì cột được tham chiếu cũng phải là INT.

Một cột quan trọng là gì?

Cột chính (hoặc tổ hợp các cột) được dùng để xác định duy nhất các hàng trong bảng và các phần tử bảng cơ sở dữ liệu trong quá trình so sánh . Với mục đích này, các giá trị chính phải khác nhau trong mỗi hàng. Thông thường, các cột chính chứa một số mã định danh duy nhất, chẳng hạn như ID nhân viên hoặc SSN.