JavaWeb部分—数据库部分

一、mysql数据库简介

1、MySQL

MySQL数据库是一个多用户、多线程的SQL数据库,是一个客户机/服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。

2、存储数据的方法

第一种方法:用大脑来记住数据。
第二种方法:写在纸上。
第三种方法:写在计算机的内存中。
第四种方法:写成磁盘文件。

3、数据库可以做什么?

存储大量数据,方便检索和访问;保持数据信息的一致、完整、共享和安全;通过组合分析,产生新的有用信息。

4、数据库的作用及要求

4.1、作用:存储数据、检索数据、生成新的数据。
4.2、要求:统一、安全、性能等

5、时下流行的数据库

时下流行的数据库:Oracle数据库、SQL Server数据库、MySQL数据库。

6、数据库

数据就是“数据”的“仓库”;数据库中包含表、关系以及操作对象;数据存放在表中。

7、MySQL数据库的优势

7.1、运行速度快
7.2、使用成本低
7.3、可移植性强
7.4、适用用户广

8、MySQL数据库的版本

8.1、社区版:免费,开源;适合普通用户。
8.2、企业版:收费,不可自由下载;功能和服务更完善;适合对功能和安全要求高的企业用户。

9、MySQL数据库支持的接口

标准C的API、JDBC、CDBC、.NET、PHP、Python、Perl、Ruby、Cobol
Alt

二、数据表概述

1、约束性

约束性:组键PK:是唯一的;外键FK。

2、数据的完整性

数据的完整性:该有的要有,不该有的不要有。

3、域完整性

域完整性:int、varchar(String类型)

三、mysql数据库的简单命令

cmd后进入数据库:mysql -u root -p密码
例:mysql -u root -p123456

单行注释:#…;多行注释:/……/
多字段使用逗号分隔;保留字用撇号括起来;

显示中文:set names gbk;
查看数据库某一个表的字段等相关信息:desc 表名;

三、数据库的语法:
1、创建数据库:CREATE DATABASE 数据库名;
例:create database myschool;
2、查看数据库列表:show tables;
3、选择数据库:USE 数据库名;
例:use myschool;
4、删除数据库:DROP DATABASE 数据库名;
例:drop database myschool;
5、创建表:CREATE TABLE [IF NOT EXISTS] 表名 (字段1 数据类型 [字段属性|约束][索引][注释], ……,字段n 数据类型 [字段属性|约束][索引][注释])[表类型][表字符集][注释];
例:#创建学生表
create table studentstudentNo INT(4) PRIMARY KEY, name CHAR(10),……);
6、主键:create table student(studentNo INT(4) PRIMARY KEY,……);
7、注释:create table test (id int(11) unsigned comment‘编号’)COMMENT='测试表’;
8、设置字符集编码:CREATE TABLE [IF NOT EXISTS] 表名(#省略代码)CHARSET = 字符集名;

9、插入单条数据记录:INSERT INTO 表名 [(字段名列表)] VALUES (值列表);
例:insert into student ( loginPwd, studentName, gradeld, phone, bornDate) values (‘123’, ‘黄小平’, 1, ‘13956799999’, ‘1996-5-8’);

10、插入多条数据记录:INSERT INTO 新表(字段名列表) VALUES(值列表1),(值列表2),……,(值列表n);
例:insert into subject (subjectName, classHour, gradeID) values (Logic Java,220,1), (HTML,160,1), (Java OOP,230,2);

11、将查询结果插入新表:CREATE TABLE 新表(SELECT 字段1,字段2, …… FROM 原表);
例:create table phoneList( SELECT studentName,phone from student);
例:create table phoneList( SELECT studentName,phone from student);

12、数据更新:UPDATE 表名 SET 字段1=值1,字段2=值2,…,字段n=值n [WHERE 条件];
例:update student set sex = ‘女’;
update student set address = ‘北京女子职业技术学校家政班’ where address = ‘北京女子职业技术学校刺绣班’;

13、删除数据记录:DELETE FROM 表名 [WHERE条件];
TRUNCATE TABLE 表名;
例:delete from student WHERE studentName = ‘王宝宝’;
truncate table student;
14、查询语法:SELECT <列名|表达式|函数|常量> FROM <表名> [WHERE <查询条件表达式>] [ORDER BY <排序的列名>[ASC或DESC]];
例:select studentNo,studentName,phone,address,bornDate from student where gradeId = 1 order by studentNo;

15、查询全部的行和列:select * from student;
16、查询部分列:SELECT studentNo,studentName,address FROM student where address=‘河南新乡’;

17、使用AS命名:SELECT studentNo AS 学生编号,studentName AS 学生姓名, address AS 学生地址 FROM student WHERE address <> ‘河南新乡’;
例:select firstName + ‘.’ + lastName as 姓名 from employees;
注意:

    • 连接的数据类型必须兼容
  1. 如果 + 连接字符型数据,结果为字符串数据的连接
  2. 如果 + 连接数值型数据,结果为数值的和
    18、查询空行:SELECT studentName FROM student WHERE email IS NULL;
    例:select studentName as 姓名,address as 地址,‘北京信息中心’ as 学校名称 from student;

19、聚合函数

函数名作用
AVG()返回某字段的平均值
COUNT()返回某字段的行数
MAX()返回某字段的最大值
MIN()返回某字段的最小值
SUM()返回某字段的和

20、字符串函数

函数名作用举例
CONCAT(str1,str1,…,strn)字符串连接select concat(‘My’,‘S’,‘QL’); 返回:MySQL
INSERT(str,pos,len,newstr)字符串替换select insert(‘这是SQL Server数据库’,3,10,‘MySQL’); 返回:这是MySQL数据库
LOWER(str)将字符串转为小写select lower(‘MySQL’); 返回:mysql
UPPER(str)将字符串转为大写select upper(‘MySQL’); 返回:MYSQL
SUBSTRING(str,num,len)字符串截取sellect substring(‘JavaMySQLOracle’,5,5); 返回:MySQL

21、ORDER BY子句(升序:asc 降序:desc):把成绩都降低10%后加5分,再查询及格成绩,并按照成绩从高到低排序。
select studentNo as 学生编号,(studentResult*0.9+5 ) as 综合成绩 from result where (studentResult*0.9+5) >=60 order by studentResult desc;

Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一小人物@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值