对上一章所展示的表进行数据输入、修改、删除
上一章各表的字段属性
以下为Employees,Departments,Salary表中的内容
###三、代码:
(1)代码方式插入(注意,该表有外键Departments中的DepartmentsID来插入):
INSERT INTO Departments VALUES('1', '财务部', NULL)
(1)代码方式插入:
INSERT INTO Employees VALUES('000001', '王林', '大专', '1966-01-23', 1, 8, '中山路 32-1-508', '83355668', '2')
UPDATE employees SET DepartmentID = '4' WHERE Name = '李丽'
CREATE TABLE Employees_duplicated SELECT * FROM Employees
Employees_duplicated 数据
(同样,如果仅仅需要复制表的结构,可以用:
CREATE TABLE Employees_duplicated2 LIKE Employees
使得创建一个新的TABLE和Employees的TABLE有同样的表结构
)
首先,需要新增两个字段:StreetName和RoomName
ALTER TABLE Employees_duplicated ADD COLUMN RoomNumber VARCHAR(40) COMMENT '房号' AFTER Address
ALTER TABLE Employees_duplicated ADD COLUMN StreetName VARCHAR(40) COMMENT '街名' AFTER Address
然后,把根据间隔符提取的字段分别插入到StreetName和RoomNumber两个字段中,其中SUBSTRING_INDEX函数的用法为SUBSTING_INDEX(需要分列的字段,’间隔符’,间隔符前(为正)/后(为负)的第几个的字符串)
UPDATE Employees_duplicated SET RoomNumber = SUBSTRING_INDEX(Address, ' ', -1);
UPDATE Employees_duplicated SET StreetName = SUBSTRING_INDEX(Address, ' ', 1);
DELETE FROM Employees_Duplicated WHERE EmployeeID = '000001'
UPDATE Employees_Duplicated SET Address = ''
INSERT INTO Salary(EmployeeID) SELECT EmployeeID FROM Employees
(1)代码方式插入(注意,该表有外键Departments中的DepartmentsID来插入)
因为ActInCome是通过存储过程来计算的,因此有两种插入方式,结果都一样
INSERT INTO Salary VALUES('000001', 2100.8, 123.09, 0)
INSERT INTO Salary(EmployeeID, InCome, OutCome) VALUES('000001', 2100.8, 123.09)
(插入时,插入的字段数必须和表结构一致,多一个数据或少一个数据都会导致发生#1136错误(详细点击此处))
(2)界面方式插入(刷新后,ActInCome就可以算出来)
UPDATE Salary SET InCome = 5000 WHERE EmployeeID = '020018'