php - 我想在员工 ID 中插入多个月的工资。现在我只能在一个客户ID中插入一个月的工资

标签 php mysql

"employee" table has E_ID, E_Name, E_Address, E_Mail, E_Dept. [E_ID is primary key]

"salary" table has E_ID, S_Amount, S_Date columns.

假设 E_ID 为 4001,并且是 11 月。我只能将11月份的工资插入到4001 E_ID中。但我想插入十二月、一月、二月。将所有月份的工资存入一个E_ID,并且还想查看每个月的工资。任何帮助将不胜感激。

最佳答案

在薪资表中,添加一个新列“id”,将其设置为整数、主键、自动增量。

不要将 E_ID 作为 Salary 表中的主列。由于您已将其定义为主键,因此您只能插入一次。主键是唯一的键表,不重复。

您可以使用此脚本

CREATE TABLE IF NOT EXISTS `salary` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `E_ID` int(11) NOT NULL,
  `S_Amount` decimal(10,2) NOT NULL,
  `S_Date` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

这里的S_Amount列是Decimal类型,因为它用于存储工资。您也可以使用整数

关于php - 我想在员工 ID 中插入多个月的工资。现在我只能在一个客户ID中插入一个月的工资,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40548292/

相关文章:

php - 解析错误:语法错误,第48行/home/a4673434/public_html/index.php中的意外$ end

PHP Implode 返回单个条目

mysql - 在 MySQL 的表名中使用点是一种好习惯吗

mysql - 来自两个单独表的 SQL 结果(差异)

mysql - 如何在 32 位和 64 位 Windows 上(静默地)卸载 MySQL

php - 使用 count 从两个表中选择总行数

php - 使用 Facebook 注册插件后无法获取用户

如果不是来自语句而是来自 INDEX 表或其他东西,mysql 不会返回结果

mysql - 如何比较来自不同列和不同行但同一张表的值?

php - file_get_contents 未找到存在的文件