我正在使用DBI
,RMySql
个包与MySql
数据库进行交互。
以下是有关配置的更多详细信息:
以下是表格网站
的架构+------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| short_name | varchar(10) | NO | UNI | NULL | |
| full_name | varchar(50) | NO | UNI | NULL | |
+------------+-------------+------+-----+---------+----------------+
正如您可以看到字段short_name
& full_name
正在UNIQUE
& NOT NULL
约束。
在尝试插入表格中已存在的重复short_name
或full_name
的行时,dbWriteTable
不会发生此类行插入,但会返回{{1} }状态,即使它违反了TRUE
约束。 UNIQUE
约束也会发生同样的事情。
这是NOT NULL
&的预期行为吗? DBI
?为什么它没有返回dbWriteTable
状态?
编辑:我还观察到,即使FALSE
和dbSendStatement()
在违反约束的情况下也不会出现任何错误。有什么方法可以了解这个吗?