是否有可能让 mysql 根据插入到同一表中另一列的内容在列中插入一个值。例如:如果我要在一列中插入纽约,另一列可能会自动成为纽约。是的,我必须将此信息存储在某处。但这样做有可能吗?
最佳答案
如果我理解正确,您正试图在一列(纽约)中插入一个值,并在第二列中插入另一个值,该值依赖于第一个值(在本例中为纽约)。
让我们使用您的城市 - 州示例,假设您有一个包含所有城市 - 州协会的表 cities
。
INSERT INTO table SET
city = 'New York',
state = (SELECT state FROM cities WHERE city = 'New York');
您必须使用这种类型的子查询,而不是使用会自动填充 state
列的触发器,因为 MySQL 中的触发器无法在已经打开的表上工作,正如@Michal Drozd 指出的出去。 (但是,它们至少在 SQL Server 和 Oracle 中可以)。
关于php - Mysql自动插入一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3690653/