我对外键限制有疑问。因此,为了测试目的,我制作了两个这样简单的表。
mysql> EXPLAIN parent;
+-------+---------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL
我想删除表中的外键,但已进入此错误消息
mysql> alter table customers drop foreign key customerid;
ERROR 1025 (HY000): Error on rename of '.\products\customers' to '.\products\#sql2-7ec-a3' (errno: 152)
mysql>
我正在尝试使用ON DELETE CASCADE作为我正在处理的数据库。似乎不起作用,所以我在一个简单的例子中进行了测试,但没有成功。
CREATE TABLE foo (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
data VARCHAR(10),
PRIMARY KEY (id)
)ENGINE=InnoDB;
CREATE TABLE foo2 (
id INT UNSIGNED NOT NULL,
data2 VARCHAR(10),
PRIMARY KEY (id),
CONSTRAINT fk_foo2_id FOREIGN KEY (id
我使用以下脚本在mysql中创建了一个表:
CREATE TABLE IF NOT EXISTS users_x_activities(
id int NOT NULL auto_increment,
id_user int unsigned NOT NULL,
id_attivita int unsigned NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (id_user) REFERENCES utente(id),
FOREIGN KEY (id_attivita) REFERENCES attivita(id)
) E
MySQL是否支持检查约束?
我可以在MySQL中执行以下脚本而不会出错。
ALTER TABLE EMP_DB_DESIGN_EXCEL ADD (
CONSTRAINT CHK_EMP_IS_ACTIVE CHECK (IS_ACTIVE IN ('Y','N')));
但如果我查询,它不会反映:
SELECT * FROM information_schema.TABLE_CONSTRAINTS T where t.table_name='EMP_DB_DESIGN_EXCEL';
背景
我们运行MySQL Aurora (5.7.mysql_aurora.2.07.2),托管供应商产品。供应商为其版本升级提供迁移SQL脚本。
我们有一个问题,即迁移不能在MySQL Aurora上成功运行,而是在其他MySQL 5.7数据库上运行,我们非常想知道为什么只在Aurora上发生这种情况。
详细信息
-- 1
DROP DATABASE IF EXISTS drop_index_test;
-- 2
CREATE DATABASE IF NOT EXISTS drop_index_test DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLA
我已经成功地将我的MySQL数据库与我的Access数据库文件链接起来。一切正常,除了MySQL数据库中的关系没有出现在Access中。
我已经使用外键在MySQL表中建立了大量的关系,但这些关系在Access中没有反映出来。请帮助我将关系从MySQL数据库导入Access。
我使用的软件: MySQL version 5,Microsoft Office2013,Access文件格式:.accdb
我检查了所有依赖于这个错误的问题,但找不到答案
这是我的EER图-- --我在销售中插入了一行,例如,( SellerFId=1,GoodFId=1,CustomerFId=1),所以我希望能够从自己的表中删除卖方或好人或客户,这样在Sales中插入行仍然保留,我在Sales和其他表之间使用了这个外部约束
ON DELETE NO ACTION ON UPDATE NO ACTION
但是,当我从自己的表中删除卖方或好人或客户时,mysql不允许我并给我此错误
不能删除或更新父行:外键约束失败(newmobarakkabul.sales,constraint fk_Sellers_has
可以在MySQL中创建原子事务吗?
假设我有一个表'category‘,其中包含以下行:
id|name
--|---------
1 |'tablets'
2 |'phones'
列name是我的主键。
如果我尝试:
START TRANSACTION;
update "category" set name = 'phones' where id = 1;
update "category" set name = 'tablets' where id = 2;
COMMIT;
我得到了:
我刚开始使用SQL,我的SQL代码有点问题。我一直在寻找关于这种错误的很多答案,但我找不到适合我的问题的答案。下面是代码示例。
CREATE DATABASE IF NOT EXISTS `PracticaER`;
USE `PracticaER`;
DROP TABLE IF EXISTS Banco;
DROP TABLE IF EXISTS Cuenta;
DROP TABLE IF EXISTS Usuario;
CREATE TABLE Usuario (
id_usuario INT NOT NULL AUTO_INCREMENT,
nombre VARCHAR(10) NOT
我正试图在我的表上设置外键约束,以便在删除主键时自动删除该行。
主表是
CREATE TABLE IF NOT EXISTS `tbl_users` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(250) NOT NULL,
`password` varchar(250) NOT NULL,
`user_role` varchar(100) NOT NULL DEFAULT 'staff',
`user_name` varchar(250) NOT NULL DEFAULT 'staff