对于想了解sql–AccessDB使用另一个表中的值更新一个表的读者,本文将提供新的信息,我们将详细介绍sql用另一个表更新这个表的数据,并且为您提供关于AccessDB用另一个表中的值更新一个表、m
对于想了解sql – Access DB使用另一个表中的值更新一个表的读者,本文将提供新的信息,我们将详细介绍sql用另一个表更新这个表的数据,并且为您提供关于Access DB用另一个表中的值更新一个表、mysql – 使用另一个表中的值更新表、MySQL 外键约束:在更新一个表时,用第一个表中的一些数据填充另一个表、mysql 把一个表中的两列合并,更新到另一个表中的一个字段的有价值信息。
本文目录一览:- sql – Access DB使用另一个表中的值更新一个表(sql用另一个表更新这个表的数据)
- Access DB用另一个表中的值更新一个表
- mysql – 使用另一个表中的值更新表
- MySQL 外键约束:在更新一个表时,用第一个表中的一些数据填充另一个表
- mysql 把一个表中的两列合并,更新到另一个表中的一个字段
sql – Access DB使用另一个表中的值更新一个表(sql用另一个表更新这个表的数据)
我已经尝试了相同基本查询的许多版本,并始终得到相同的错误消息:
Operation must use an updateable
query.
有关为什么此查询在Access DB中不起作用的任何想法?
UPDATE inventoryDetails as idet SET idet.itemDesc = ( SELECT bomItemDesc FROM BOM_TEMPLATES as bt WHERE bt.bomModelNumber = idet.modelNumber )
也试过这个,因为我意识到,因为第二个表有每个型号的多个型号记录 – 我只需要为每个型号找到的第一个记录中的第一个描述.
UPDATE inventoryDetails as idet SET idet.item_desc = ( SELECT TOP 1 bomItemDescription FROM BOM_TEMPLATES as bt WHERE bt.bomModelNumber = idet.modelNumber )
……但仍然得到同样的错误.
解决方法
UPDATE inventoryDetails INNER JOIN BOM_TEMPLATES ON inventoryDetails.modelNumber = BOM_TEMPLATES.bomModelNumber SET inventoryDetails.itemDesc = [bomItemDesc];
Access DB用另一个表中的值更新一个表
我试图用另一个表中找到的值更新一个表中的所有记录。
我尝试了相同基本查询的许多版本,并且始终收到相同的错误消息:
操作必须使用可更新的查询。
关于为什么此查询在Access DB中不起作用的任何想法?
UPDATE inventoryDetails as idet
SET idet.itemDesc =
(
SELECT bomItemDesc
FROM BOM_TEMPLATES as bt
WHERE bt.bomModelNumber = idet.modelNumber
)
也尝试了此操作,因为我意识到第二张表的每个型号都有多个型号记录-我只需要为每个型号找到第一条记录中的第一条说明。
UPDATE inventoryDetails as idet
SET idet.item_desc =
(
SELECT TOP 1 bomItemDescription
FROM BOM_TEMPLATES as bt
WHERE bt.bomModelNumber = idet.modelNumber
)
…虽然仍然出现相同的错误。
mysql – 使用另一个表中的值更新表
我有这些表:
customer:
customer_id vat_number
=========== ==========
1 ES-0000001
2 ES-0000002
3 ES-0000003
invoice:
invoice_id customer_id vat_number
========== =========== ==========
100 1 NULL
101 3 NULL
102 3 NULL
103 2 NULL
104 3 NULL
105 1 NULL
我想用invoice.vat_number中的当前值填充invoice.vat_number中的NULL值.是否可以使用单个sql语句执行此操作?
我到目前为止触发了语法错误:
UPDATE invoice
SET vat_number=cu.vat_number /* Syntax error around here */
FROM invoice iv
INNER JOIN customer cu ON iv.customer_id=cu.customer_id
WHERE invoice.invoice_id=iv.invoice_id;
UPDATE INVOICE
JOIN CUSTOMER ON CUSTOMER.customer_id = INVOICE.customer_id
SET vat_number = CUSTOMER.vat_number
WHERE INVOICE.vat_number IS NULL
使用MysqL,ANSI-89 JOIN语法:
UPDATE INVOICE,CUSTOMER
SET INVOICE.vat_number = CUSTOMER.vat_number
WHERE CUSTOMER.customer_id = INVOICE.customer_id
AND INVOICE.vat_number IS NULL
对于more info,see the MySQL UPDATE documentation.这是MysqL特定的UPDATE语句语法,不太可能在其他数据库上受支持.
MySQL 外键约束:在更新一个表时,用第一个表中的一些数据填充另一个表
如何解决MySQL 外键约束:在更新一个表时,用第一个表中的一些数据填充另一个表?
我有两个表,用户表和登录表。 说:
Create table users(
id int not null,name varchar not null,email varchar not null,password varchar not null,entries int default 0,primary key(id));
Create table login(
id int not null,user_id int not null,Primary key(id)),Foreign key (user_id) references users(id));
我可以添加哪些约束或如何解决,以便每当我在 users 表中添加用户时,email 和 password 列都会添加到登录表也是(就像说我创建了用户表的最小化版本,其中只包含用户的登录凭据)。每当我从用户表中删除用户时,他应该从登录表中删除。
我希望我已经足够描述了?
解决方法
您可以定义 constraint with cascade delete。要实现依赖表的更新,您需要 triggers。可以定义 AFTER INSERT 触发器,您可以在其中更新任何依赖表。
同时,我会重新考虑在依赖表中有冗余字段,因为您总是可以通过加入主表来获取它。
mysql 把一个表中的两列合并,更新到另一个表中的一个字段
UPDATE account a,contact c SET a.contact=CONCAT(c.first_name,c.last_name) WHERE a.id = c.account
用到 concat 拼接字符串函数,concat (str1,str1,......)
关于sql – Access DB使用另一个表中的值更新一个表和sql用另一个表更新这个表的数据的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于Access DB用另一个表中的值更新一个表、mysql – 使用另一个表中的值更新表、MySQL 外键约束:在更新一个表时,用第一个表中的一些数据填充另一个表、mysql 把一个表中的两列合并,更新到另一个表中的一个字段等相关内容,可以在本站寻找。
本文标签: