Auto commit

This commit is contained in:
2025-03-14 09:56:37 +08:00
parent 1ba7f30de6
commit baf429e8a2
2 changed files with 138 additions and 0 deletions
Binary file not shown.
@@ -0,0 +1,138 @@
### 练习一
**1**
```sql
#(1)
CREATE DATABASE test04_Market DEFAULT CHARACTER SET utf8;
USE test04_Market;
#(2)
CREATE TABLE customers(
c_num INT(11) PRIMARY KEY AUTO_INCREMENT,
c_name VARCHAR(50),
c_contact VARCHAR(50),
c_city VARCHAR(50),
c_birth DATETIME NOT NULL
);
#(3)
#AFTER/BEFORE /
ALTER TABLE MODIFY AFTER/BEFORE ;
ALTER TABLE customers MODIFY c_contact VARCHAR(50) AFTER c_birth;
#(4)
ALTER TABLE customers MODIFY c_name VARCHAR(70);
#(5)
ALTER TABLE customers CHANGE c_contact c_phone VARCHAR(50);
#(6)
ALTER TABLE customers ADD c_gender CHAR(1);
#(7)
ALTER TABLE customers RENAME TO customers_info;
#(8)
ALTER TABLE customers_info DROP c_city;
```
**2**
```sql
#(1)
CREATE TABLE orders(
o_num INT(11) PRIMARY KEY AUTO_INCREMENT,
o_date DATE,
c_id INT(11),
CONSTRAINT fk_cid FOREIGN KEY(c_id) REFERENCES customers_info(c_num)
);
#(2)
#
ALTER TABLE orders DROP FOREIGN KEY orders_ibfk_1;
#
DROP TABLE orders;
```
---
### 练习二
```sql
#(1)
CREATE TABLE pet(
`name` VARCHAR(20) NOT NULL COMMENT '宠物名称',
`owner` VARCHAR(20) COMMENT '宠物主人',
species VARCHAR(20) NOT NULL COMMENT '种类',
sex CHAR(1) NOT NULL COMMENT '性别',
birth YEAR NOT NULL COMMENT '出生日期',
death YEAR COMMENT '死亡日期'
);
INSERT INTO pet()
VALUES
('Fluffy', 'Harold', 'cat', 'f', 2003, 2010),
('Claws', 'Gwen', 'cat', 'm', 2004,NULL ),
('Buffy', NULL, 'dog', 'f', 2009, NULL),
('Fang', 'Benny', 'dog', 'm', 2000, NULL),
('Bowser', 'Diane', 'dog', 'm', 2003, 2009),
('Chirpy', NULL, 'bird', 'f', 2008, NULL);
#(2)
UPDATE pet
SET `owner` = 'Kevin'
WHERE `name` = 'Fang';
#(3)
UPDATE pet
SET `owner` = 'Kevin'
WHERE `owner` IS NULL;
#(4)
DELETE FROM pet
WHERE death IS NOT NULL;
#(5)
TRUNCATE pet;
```
### 练习三
```sql
#1.
CREATE DATABASE test_compay DEFAULT CHARACTER SET utf8;
#2.
CREATE TABLE department(
depid INT PRIMARY KEY AUTO_INCREMENT,
depname VARCHAR(20) NOT NULL,
deinfo VARCHAR(50)
);
CREATE TABLE employee(
empid INT PRIMARY KEY AUTO_INCREMENT,
`name` VARCHAR(20) NOT NULL,
sex CHAR(1) NOT NULL DEFAULT '',
title VARCHAR(20) NOT NULL,
birthday DATE NOT NULL,
depid INT,
CONSTRAINT fk_eid_did FOREIGN KEY(depid) REFERENCES department(depid)
);
CREATE TABLE salary(
empid INT,
basesalary DECIMAL(10, 2),
titleSalary DECIMAL(10, 2),
decuction DECIMAL(10, 2)
);
#3
ALTER TABLE salary ADD CONSTRAINT fk_sal_eid FOREIGN KEY(empid)
REFERENCES employee(empid) ON UPDATE CASCADE ON DELETE CASCADE;
#4
INSERT INTO department()
VALUES
(111, '生产部', NULL),
(222, '销售部', NULL),
(333, '人事部', NULL);
INSERT INTO employee()
VALUES
(1001, '张三', '', '高级工程师', '1975-1-1', 111),
(1002, '李四', '', '助工', '1985-1-1', 111),
(1003, '王五', '', '工程师', '1978-11-11', 222),
(1004, '赵六', '', '工程师', '1999-1-1', 222);
INSERT INTO salary()
VALUES
(1001, 2200, 1100, 200),
(1002, 1200, 200, NULL),
(1003, 2900, 700, 200),
(1004, 1950, 700, 150);
```