数据库操作SQL练习

数据库操作SQL练习
一、数据库的创建:

1、创建一个名称为mydb1的数据库
	    CREATE DATABASE mydb1;
	2、创建一个使用utf8字符集的mydb2数据库。
	   CREATE DATABASE mtdb2 CHARACTER SET utf8;   
	3、创建一个使用utf8字符集,并带比较规则的mydb3数据库。
	    CREATE DATABASE mydb3 CHARACTER SET utf8 COLLATE utf8_bin;

二、数据库的修改:

	修改mydb2字符集为gbk;
	ALTER DATABASE mydb2 CHARACTER SET gbk;

三、数据库的删除:

	删除数据库mydb3。
	DROP DATABASE mydb3;

四、数据库查看:

	查看所有数据库。
	SHOW DATABASES;
	查看数据库mydb1的字符集
	SHOW CREATE DATABASE mydb1;

数据库中表操作的SQL练习
一、创建表

	1、创建一张员工表employee
			字段		类型
			id			整形
			NAME		字符型
			gender		字符型
			birthday    日期型
			entry_date  日期型
			job			字符型
			salary		小数型
			RESUME		文本
			CREATE TABLE employee(
			id INT,
			NAME VARCHAR(15),
			gender VARCHAR(20),
			birthday DATETIME,
			emtry_date TIMESTAMP,
			job VARCHAR(20),
			salary DOUBLE,
			RESUME TEXT
			);
2、创建一张员工表employee2
		字段		类型
		id			整形
		NAME		字符型
		gender		字符型
		birthday    日期型
		entry_date  日期型
		job			字符型
		salary		小数型
		RESUME		文本
要求:把id 设置成主键,并且自动增长。NAME不允许为空。
	CREATE TABLE employee2(
	id INT PRIMARY KEY AUTO_INCREMENT,
	NAME VARCHAR(15),
	gender VARCHAR(20),
	birthday DATETIME,
	entry_date TIMESTAMP,
	job VARCHAR(20),
	salary DOUBLE,
	RESUME TEXT
	);

二、删除表

	1、删除employee2表
	DROP TABLE enployee2;

三、数据表的结构的修改:

1、在上面员工表的基本上增加一个image列。
  	 ALTER TABLE employee ADD image2 VARCHAR(20);
  	 ALTER TABLE employee DROP image2;
	2、修改job列,使其长度为60。
	  ALTER TABLE employee MODIFY job VARCHAR(80);
	3、删除gender列。
	  ALTER TABLE employee DROP gender;
	4、表名改为USER。
	  RENAME TABLE employee TO USER;
	  RENAME TABLE USER TO employee;
	5、修改表的字符集为utf8
	   ALTER TABLE employee CHARACTER SET utf8;
	6、列名NAME修改为username
	   ALTER TABLE CHANGE NAME username VARCHAR(20);

四、查看表结构

	1、查看数据库内的所有表
	   SHOW TABLES;
	2、查看employee的建表语句
	  SHOW CREATE TABLE employee;
	3、查看employee的表结构
	  DESC employee;

表记录的操作
一、插入语句 —INSERT

	1、向employee中插入三个员工信息,要求员工姓名分别是zs,ls,wangwu
	INSERT INTO employee VALUES(NULL,'zs',NULL,NULL,NULL,NULL,NULL,NULL);
	INSERT INTO employee VALUES(NULL,'ls',NULL,NULL,NULL,NULL,NULL,NULL);
	INSERT INTO employee VALUES(NULL,'wangwu',NULL,NULL,NULL,NULL,NULL,NULL);
	

二、更新语句 —UPDATE

	1、将所有员工薪水修改为5000元。
	   UPDATE employee SET salary=5000;
	   UPDATE employee SET salary=5000 WHERE NAME='wangwu';
	2、将姓名为’zs’的员工薪水修改为3000元。
	    UPDATE employee SET salary=3000 WHERE NAME='zs';
	3、将姓名为’ls’的员工薪水修改为4000元,job改为ccc。
	    UPDATE employee SET salary=4000,job='ccc' WHERE NAME='ls';
	4、将wangwu的薪水在原有基础上增加1000元。
	   UPDATE employee SET salary=salary+1000 WHERE NAME='wangwu';

三、删除语句 —DELETE

	1、删除表中名称为’zs’的记录。
	   DELETE FROM employee WHERE NAME='zs';
	2、删除表中所有记录。
	   DELETE FROM employee;

四、查询语句 —SELECT

	CREATE TABLE exam(
		id INT PRIMARY KEY AUTO_INCREMENT,
		NAME VARCHAR(20) NOT NULL,
		chinese DOUBLE,
		math DOUBLE,
		english DOUBLE
	);
	INSERT INTO exam VALUES(NULL,'关羽',85,76,70);
	INSERT INTO exam VALUES(NULL,'张飞',70,75,70);
	INSERT INTO exam VALUES(NULL,'赵云',90,65,95);
	INSERT INTO exam VALUES(NULL,'刘备',97,50,50);
	INSERT INTO exam VALUES(NULL,'曹操',90,89,80);
	INSERT INTO exam VALUES(NULL,'司马懿',90,67,65);
练习:
1、查询表中所有学生的信息。
   SELECT * FROM exam;
2、查询表中所有学生的姓名和对应的英语成绩。
   SELECT NAME,english FROM exam;
3、过滤表中重复数据。
   SELECT DISTINCT * FROM exam; 
4、在所有学生分数上加10分特长分。
SELECT * FROM exam SET chinese=(chinese+10),math=(math+10),english=(english+10);

猜你喜欢

转载自blog.csdn.net/sl1130398099/article/details/86106087