文章目录

  • 一、数据库的管理(创建、删除、查看、备份、恢复)
  • 1.1 创建数据库
  • 1.2 删除数据库
  • 1.3 查询命令
  • 1.4 备份数据库(需要在命令行窗口执行)
  • 1.5 恢复(需要在数据库环境下执行)
  • 二、数据库中的表的管理(创建、删除、修改)
  • 2.1 创建表格
  • 2.2 数据类型(整型、位、浮点型、字符串、时间)
  • 2.3 修改表
  • 三、数据库的C(Create)R(Read)U(Update)D(Delete)语句
  • 3.1 insert语句
  • 3.2 update语句
  • 3.3 delete语句
  • 3.4 select 语句


一、数据库的管理(创建、删除、查看、备份、恢复)

1.1 创建数据库

CREATE DATABASE db02


#创建数据库带utf8字集
	
	CREATE DATABASE db02 CHARACTER SET utf8

#创建数据库带utf8字集,并带校对规则
	
	CREATE DATABASE db03 CHARACTER SET utf8 COLLATE utf8_bin

1.2 删除数据库

DROP DATABASE db02

1.3 查询命令

SELECT * FROM t1 WHERE NAME = 'tom'

#显示数据库
	
	SHOW DATABASES

#显示之前建立的数据库
	
	SHOW CREATE DATABASE db01

1.4 备份数据库(需要在命令行窗口执行)

mysqldump -u root -p -B db01 db02 > f://bak.sql

sybase 数据库 删除列sql sqlyog删除数据库_数据库


sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_02

1.5 恢复(需要在数据库环境下执行)

mysql -u root -p

	source f://bak.sql

sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_03


sybase 数据库 删除列sql sqlyog删除数据库_小米手机_04

二、数据库中的表的管理(创建、删除、修改)

2.1 创建表格

CREATE TABLE `user`(
		id INT,
		`name` VARCHAR(255),
		`password` VARCHAR(255),
		`brithday` DATE)
		CHARACTER SET utf8 COLLATE utf8_bin ENGINE INNODB

sybase 数据库 删除列sql sqlyog删除数据库_数据库_05

2.2 数据类型(整型、位、浮点型、字符串、时间)

测试数据类型tinyint,tinyint unsigned。
	
	CREATE TABLE t3(
	id TINYINT
	);
	INSERT INTO t3 VALUES(-128);
	
	CREATE TABLE t4(
	id TINYINT UNSIGNED
	);
	INSERT INTO t4 VALUES(128);

sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_06

位类型bit。

	CREATE TABLE t5 (num BIT(8))
	INSERT INTO t5 VALUES(1);
	
	INSERT INTO t5 VALUES(255);

sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_07

小数类型 float,double,decimal。
	
	CREATE TABLE t6(
	num1 FLOAT,
	num2 DOUBLE,
	num3 DECIMAL(30,20)
	);
	INSERT INTO t6 VALUES(99.123456789123456789,99.123456789123456789,99.123456789123456789);
	SELECT * FROM t6;

sybase 数据库 删除列sql sqlyog删除数据库_mysql_08

字符串类型
	
	CREATE TABLE t8(
	`name` CHAR(255)
	);
	
	CREATE TABLE t9(
	`name` VARCHAR(32766))CHARSET gbk;
时间类型

	birthday DATE, -- 生日
	job_time DATETIME,-- 记录年月日
	login_time TIMESTAMP -- 登录时间
		NOT NULL DEFAULT CURRENT_TIMESTAMP
		ON UPDATE CURRENT_TIMESTAMP);
		
	SELECT * FROM t10;
	INSERT INTO t10(birthday,job_time)
	VALUES('2021-08-15','2021-08-15 12:12:12')

sybase 数据库 删除列sql sqlyog删除数据库_数据库_09

2.3 修改表

-- 在resume列添加新列image,varchar类型
	
	ALTER TABLE emp
		ADD image VARCHAR(32) NOT NULL DEFAULT''
		AFTER RESUME
	DESC emp

sybase 数据库 删除列sql sqlyog删除数据库_数据库_10

-- 修改job列,数据类型为varchar(60)
	
	ALTER TABLE emp
		MODIFY job VARCHAR(60) NOT NULL DEFAULT''
	DESC emp

sybase 数据库 删除列sql sqlyog删除数据库_sybase 数据库 删除列sql_11

-- 删除image列
	
	ALTER TABLE emp
		DROP image
	DESC emp

sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_12

-- 改变表名称emp改为employee

	RENAME TABLE emp TO employee
	DESC employee

sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_13

-- 修改表的字符集为utf8
	
	ALTER TABLE employee CHARACTER SET utf8
	DESC employee

sybase 数据库 删除列sql sqlyog删除数据库_数据库_14

-- 列名name改成name_id
	
	ALTER TABLE employee
		CHANGE `name` `name_id` VARCHAR(64) NOT NULL DEFAULT''
	DESC employee

sybase 数据库 删除列sql sqlyog删除数据库_数据库_15

三、数据库的C(Create)R(Read)U(Update)D(Delete)语句

3.1 insert语句

CREATE TABLE `goods`(
	id INT,
	good_name VARCHAR(10),
	price DOUBLE);
	
	-- 添加数据
	INSERT INTO `goods`(id,good_name,price)
		VALUES(10, '小米手机', 1999);
	INSERT INTO `goods`(id,good_name,price)
		VALUES(10, '华为手机', 1999);
	SELECT *FROM goods;

sybase 数据库 删除列sql sqlyog删除数据库_sybase 数据库 删除列sql_16

3.2 update语句

CREATE TABLE `phone`(
	id INT,
	phone_name VARCHAR(10),
	price DOUBLE);
	
	-- 添加数据
	INSERT INTO `phone`(id,phone_name,price)
		VALUES(10, '小米手机', 1999);
	INSERT INTO `phone`(id,phone_name,price)
		VALUES(20, '华为手机', 1999);
	SELECT *FROM phone;
	
	--更新数据
	UPDATE phone 
		SET price = 3000
		WHERE phone_name = '小米手机'
	SELECT *FROM phone;

sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_17

3.3 delete语句

--删除数据
	DELETE FROM phone 
		WHERE phone_name = '小米手机'
	SELECT *FROM phone;

sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_18

3.4 select 语句

CREATE TABLE student(
		id INT NOT NULL DEFAULT 1,
		NAME VARCHAR(20)NOT NULL NOT NULL DEFAULT '',
		chinese FLOAT NOT NULL NOT NULL DEFAULT 0.0,
		english FLOAT NOT NULL NOT NULL DEFAULT 0.0,
		math FLOAT NOT NULL NOT NULL DEFAULT 0.0
	);
	
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(1,'张三',70,70,70);
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(2,'李四',70,71,70);
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(3,'王五',70,70,72);
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(4,'赵六',73,70,70);
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(5,'钱七',70,74,70);
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(6,'孙八',70,70,75);
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(7,'李九',76,77,70);
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(8,'周十',70,78,70);
	
	-- 查询表中所有学生的信息;
	SELECT * FROM student;
	查询表中所以学生的英语成绩
	SELECT `name`,english FROM student;
	过滤表中的重复数据;
	SELECT DISTINCT* FROM student;
	
	SELECT DISTINCT english FROM student;

sybase 数据库 删除列sql sqlyog删除数据库_mysql_19

-- 统计总分
	SELECT `NAME`,(chinese+english+math)FROM student;
	-- 总分栏改名
	SELECT `NAME`,(chinese+english+math)AS total_score FROM student;

sybase 数据库 删除列sql sqlyog删除数据库_创建数据库_20

排序
	总分升序
	
	SELECT * FROM student
		ORDER BY math;

sybase 数据库 删除列sql sqlyog删除数据库_sybase 数据库 删除列sql_21

总分降序

	SELECT `NAME`,(chinese+english+math)AS total_score FROM student
		ORDER BY total_score DESC;

sybase 数据库 删除列sql sqlyog删除数据库_mysql_22

按周姓排序
	
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(8,'周十',600,78,70);
	INSERT INTO student(id,NAME,chinese,english,math)VALUES(9,'周十一',78,78,70);
	SELECT * FROM student
		WHERE `name`LIKE'周%'
		ORDER BY chinese;

sybase 数据库 删除列sql sqlyog删除数据库_sybase 数据库 删除列sql_23