MySQL实践上机练习一箩筐(mysql上机练习)
MySQL是一种广泛使用的关系型数据库管理系统,具有开源、简易等特点,在很多领域得到了广泛的应用。在学习MySQL的过程中,上机练习是非常必要的环节。本文将介绍一些常见的上机练习题及其解答,帮助初学者快速掌握MySQL的使用。
1.创建数据库和表
创建一个名为bookstore的数据库,其中包含一个名为books的表,表中有id、title、author和price四个字段,其中id为自增长整数类型,其他三个字段分别为varchar、text和float类型。
代码如下:
CREATE DATABASE bookstore; --创建数据库bookstore
USE bookstore; --选中bookstore数据库CREATE TABLE books (
id INT NOT NULL AUTO_INCREMENT, --id为自增长整数类型 title VARCHAR(100), --标题为varchar类型
author TEXT, --作者为text类型 price FLOAT, --价格为float类型
PRIMARY KEY (id) --设置主键为id);
2.插入数据
向books表中插入一些数据,例如:
INSERT INTO books (title, author, price) VALUES ('Thinking in Java', 'Bruce Eckel', 88.8);
INSERT INTO books (title, author, price) VALUES ('Effective Java', 'Joshua Bloch', 79.9);INSERT INTO books (title, author, price) VALUES ('The C Programming Language', 'Brian Kernighan and Dennis Ritchie', 39.9);
3.查询数据
查询books表中所有数据:
SELECT * FROM books;
查询id为1的书籍信息:
SELECT * FROM books WHERE id = 1;
查询书名为“Thinking in Java”的书籍信息:
SELECT * FROM books WHERE title = 'Thinking in Java';
查询作者为“Joshua Bloch”的书籍信息:
SELECT * FROM books WHERE author = 'Joshua Bloch';
查询价格大于70的书籍信息:
SELECT * FROM books WHERE price > 70;
4.更新数据
将id为1的书籍价格改为55.5:
UPDATE books SET price = 55.5 WHERE id = 1;
5.删除数据
删除价格小于50的书籍:
DELETE FROM books WHERE price
6.多表查询
创建一个名为categories的表,包含id和category两个字段,其中id为自增长整数类型。向categories表中插入一些数据:
INSERT INTO categories (category) VALUES ('Programming');
INSERT INTO categories (category) VALUES ('Science');
向books表中添加一个category_id字段,表示所属类别,它是一个外键,关联categories表的id字段。
ALTER TABLE books ADD category_id INT;
为category_id字段添加外键约束:
ALTER TABLE books ADD CONSTRNT fk_category_id FOREIGN KEY (category_id) REFERENCES categories (id);
向books表中插入一些数据:
INSERT INTO books (title, author, price, category_id) VALUES ('Introduction to Algorithms', 'Thomas H. Cormen', 99.9, 2);
INSERT INTO books (title, author, price, category_id) VALUES ('The Art of Computer Programming', 'Donald E. Knuth', 188, 1);INSERT INTO books (title, author, price, category_id) VALUES ('Quantum Computing Since Democritus', 'Scott Aaronson', 49.99, 2);
查询出所有书籍以及它们所属的类别:
SELECT books.*,categories.category FROM books,categories WHERE books.category_id=categories.id;
以上就是MySQL实践的一些练习,通过这些例子的练习,可以加深对MySQL语法和应用的理解。当然,在实际开发中,SQL查询语句往往更加复杂,需要不断积累实际经验才能成为熟练的数据库开发者。