JAVA企业级开发-sql入门(07)
一、 数据库

什么是数据库? 就是一个文件系统,通过标准SQL语言操作文件系统中数据 ---- 用来存放软件系统的数据
我们今天学习的数据库是mysql。关系型数据库。
什么是关系化数据库 ? 保存关系数据模型的数据库
关系型数据:

1. 常用的关系型数据库
Oracle:甲骨文公司—以前专门数据库厂商,oracle是收费,大型数据库 ,用于任何系统任何平台 ,windows.LINUX 。
MySQL:早期开源免费数据库产品,被oralce收购,从6.0开始出现收费版本。LAMP组合 Linux + Apache + MySQL + PHP 完全开源免费 ,自从mysql被oracle收购后,从6.0开始出现收费版本。
DB2:IBM数据库产品,大型收费数据库。websphere服务器一起使用,也可windows,linux
SYBASE 中等规模数据库,收费。PowerDesigner数据库建模工具
SQL Server 微软公司数据库产品 收费中等规模数据库 ,操作系统要求是windows 结合.net 一起使用
Java开发者主要使用 MySQL 、Oracle、DB2 三种数据库 -- SQL Server
二、 mysql
1. mysql的安装和卸载
1.1 mysql的卸载
a. 知道mysql的安装目录:
在mysql的安装目录。找到my.ini 文件。
找到datadir 并且记录路径。 (mysql的数据文件的目录)
datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"

b、打开控制面板—卸载程序
c、卸载mysql
d、删除mysql的安装目录,删除mysql的数据文件目录datadir.第一步中记录的文件目录
mysql默认的数据文件目录,在ProgramDate这个目录,并且这个目录是隐藏目录。需要设置显示隐藏目录。
1.2 mysql的安装
选择自定义按照。第二个



设置mysql数据库的默认编码集

设置mysql的默认字符集



1.3 环境变量
在命令行中,输入mysql –u root –p 的时候,出现mysql不是内部命令。环境变量没有配置。
path后面加入 :;C:\Program Files\MySQL\MySQL Server 5.5\bin
是mysql的安装目录到bin目录
添加path的时候,如果出现 前面的没有分号,需要自己去加上分号;要注意分号的中英文。
按照完成之后,在cmd中输入
mysql –u root –p
出现如下图,表示mysql启动成功。

1.4、重置mysql--root密码
1. 停止mysql服务器:运行? c,在服务管理界面,停止服务
我的电脑---管理—服务和应用程序---服务—mysql 停止
2. 在命令行中输入,打开cmd mysqld --skip-grant-tables,启动服务器,启动服务器光标不懂,一定不要关闭窗口,

3. 新打开cmd,输入mysql -u root -p 这个时候是不需要密码的。

4. use mysql

5. update user set password=password('新密码') where user='root';

flush privileges;
6. 关闭两个cmd窗口。在认为管理器中去结束mysqld的进程。
7. 重启mysql服务
mysql –u root –p
2.2、 mysql的存储结构

一个数据库服务器可以有多个数据库,一个数据库中可以有多个表,一个表中可以有多条数据记录。
三、 sql语言
SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。
特点:
非过程性语言。一条语句一个结果。多条语句之间没有影响。
int a = 10;
int b = 20;
int sum = a +b;
sql:不能编写复杂的程序。
为加强SQL的语言能力,各厂商增强了过程性语言的特征
如Oracle的PL/SQL 过程性处理能力
SQL Server、Sybase的T-SQL
SQL是用来存取关系数据库的语言,具有查询、操纵、定义和控制关系型数据库的四方面功能
DDL (数据定义语言)
数据定义语言 - Data Definition Language
用来定义数据库的对象,如数据表、视图、索引等,数据库。
create drop alter
DML (数据操纵语言)
数据处理语言 - Data Manipulation Language
在数据库表中记录 修改,更新,删除
如 update, insert, delete
DCL (数据控制语言)
数据控制语言 – Data Control Language
指用于设置用户权限和控制事务语句
如grant,revoke,if…else,while,begin transaction
DQL (数据查询语言)------不是标准
数据查询语言
– Data Query Language
数据表记录的查询。
select
1、数据库—crud
2、数据表—crud
3、表记录的---crud
3.1、 数据库操作语句
sql语句每一条需要有 分号,表示结束。
3.1.1 创建数据库
语法1,语法2 需要注意;
1.连接到mysql中。
语法1:create database 数据库名;----
练习:
创建一个名称为mydb1的数据库。

可以使用:show databases; ---查询当前服务器所有数据库。

注意:此时的数据库编码格式 mysql的默认编码格式。(安装数据库时候指定的,UTF8)
语法2:create database 数据库名 character set ‘字符集’
创建数据库的同时指定字符集。
如果指定字符集是 utf8 utf-8 是错误滴(mysql不认识UTF-8)。
创建一个使用gbk字符集的mydb2数据库。

如何查看一个数据库的字符集:show create database 数据库名; 查询某个数据库的字符集,以及创建数据库的语句。

语法3:create database 数据库名 character set ‘字符集‘ collate ‘比较规则’
了解
比较规则:数据内的比较方式。 某一个字符的比较规则是有mysql已经设定好了。可以查看mysql的文档。确定某个字符集有那些比较规则。
创建数据库,并且指定数据库的字符集,以及排序方式。(比较规则)
创建一个数据库,并且指定该数据库的编码格式。
练习:
创建一个使用utf8字符集,并带比较规则的mydb3数据库


JAVA企业级开发-sql入门(07)的更多相关文章
- JAVA企业级开发-jdbc入门(09)
一. jdbc介绍 JDBC全称为:Java DataBase Connectivity(java数据库连接). SUN公司为了简化.统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JD ...
- mongodb高级操作及在Java企业级开发中的应用
Java连接mongoDB Java连接MongoDB需要驱动包,个人所用包为mongo-2.10.0.jar.可以在网上下载最新版本. package org.dennisit.mongodb.st ...
- JAVA企业级开发-session,cookie(13)
一. jsp jsp: java server pager .java动态生成网页的一门技术 使用servlet生成网页时候遇到的问题,为什么使用jsp? 在servlet里面书写htm ...
- JAVA企业级开发-jdbc事务,数据库连接池(10)
一. JDBC事务 事务: 问题1.什么是事务 问题2.java中(jdbc)如何控制事务 1. 事务—重点 指的的逻辑上的一组(一组sql,insert update ,delete)操作,组成 ...
- JAVA企业级开发-xml基础语法&约束&解析(04)
一.什么是xml html:超文本标记语言.它主要是用来封装页面上要显示的数据,最后通过浏览器来解析html文件,然后把数据展示在浏览器上.同样我们可以使用JS和DOM技术对html文件进行解析和操作 ...
- JAVA企业级开发--jsp,el,jstl(14)
三. EL表达式语言 EL 全名为Expression Language.表达式语言.jsp2.0之后才引入的. EL主要作用:替代:<%= %> out.print(); 获取数 ...
- java企业级开发的实质就是前台后台如何交互的-各个对象之间如何交互,通信的-程序执行的流程是怎样的
1.开山鼻祖-servlet 如何将url 和 strvlet(.java文件)联系起来的 顺平说的:在xml中,url先找到xml,由对应的url的得到servlet那个类,然后就可以输入一个网址访 ...
- JAVA企业级开发-JavaScript(02)
一.JavaScript介绍 Javascript语言诞生主要是完成页面的数据验证.因此它运行在客户端,需要运行浏览器来解析执行JavaScript代码. 特点: 交互性(它可以做的就是信息的动态交互 ...
- JAVA企业级开发-BOM&DOM(03)
一.BOM对象介绍 BOM对象:Browser Object Model 浏览器对象模型.把整个浏览器当做一个对象来处理. 一个浏览器对象中又包含了其他的对象. 重点介绍:window.history ...
随机推荐
- 九度OJ 1039:Zero-complexity Transposition(逆置) (基础题)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:3093 解决:1255 题目描述: You are given a sequence of integer numbers. Zero-co ...
- 九度OJ 1019:简单计算器 (基础题、DP)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:6725 解决:2454 题目描述: 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值. 输入: ...
- 九度OJ 1016:火星A+B (进制转换)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:4913 解决:1334 题目描述: 读入两个不超过25位的火星正整数A和B,计算A+B.需要注意的是:在火星上,整数不是单一进制的, ...
- git config --system --unset credential.helper 重新输入账号密码
检查本地配置$ git config --local -lcore.repositoryformatversion=0core.filemode=falsecore.bare=falsecore.lo ...
- The Log-Structured Merge-Tree (LSM-Tree
https://www.cs.umb.edu/~poneil/lsmtree.pdf [Log-Structured Merge-Tree ][结构化日志归并树][要解决的问题]The Log-S ...
- 【题解】cycle
[题解]cycle 题目描述 给定一个无向图,求一个环,使得环内边权\(\div\)环内点数最大. 数据范围 \(n \le 5000\) \(m\le 10000\) \(Solution\) 考虑 ...
- 我的Java开发学习之旅------>Java NIO 报java.nio.charset.MalformedInputException: Input length = 1异常
今天在使用Java NIO的Channel和Buffer进行文件操作时候,报了java.nio.charset.MalformedInputException: Input length = 1异常, ...
- 《Python Machine Learning》索引
目录部分: 第一章:赋予计算机从数据中学习的能力 第二章:训练简单的机器学习算法——分类 第三章:使用sklearn训练机器学习分类器 第四章:建立好的训练集——数据预处理 第五章:通过降维压缩数据 ...
- 电话聊天狂人 【STL】
7-2 电话聊天狂人(25 分) 给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人. 输入格式: 输入首先给出正整数N(≤105),为通话记录条数.随后N行,每行给出一条通话记录.简单起 ...
- 让loadrunner走下神坛(全)
作者: sunshinelius(转载请注明作者) Loadrunner无疑是一个强大有力的压力测试工具.它的脚本可以录制生成,自动关联:测试场景可以面向指标,多方监控:测试结果图表显示,拆分组合.相 ...