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 ...
随机推荐
- 关联android-support-v4源码关联不上的解决办法
在android项目中查看android-support-v4中的源码提示“Android Private Libraries which does not modified source attac ...
- django 设置静态文件,static
django 设置静态文件,static 一.搜集静态文件 1.1 命令行查看 collectstatic guoguos-MacBook-Pro:mysite guoguo$ python mana ...
- 【windows】如何让一个程序开机自启动
windows的开机自启动也是将一个程序放在文件夹下即可,将应用程序或者快捷方式放在如下文件夹下,即可实现开机自启动 C:\ProgramData\Microsoft\Windows\Start Me ...
- redis的持久化RDB与AOF
redis 持久化 Redis是一种内存型数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题,Redis提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失. RDB ...
- windows server 2008 r2 下发布网站excel有时候无法下载文档
最近将公司网站服务器更新了系统,从win2003 到 win2008 r2 (64bit),一切正常,但是使用网站的过程中发现了一个比较奇怪的问题,就是,有时候网站的excel文档无法下载,但是我什么 ...
- python返回列表中指定内容的索引
import numpy as npa=[2,10,2,3,4,10,10]ans = np.where(np.array(a)==10)print(ans) 结果是:(array([1, 5, 6] ...
- CentOS7 网络管理工具nmcli
今天帮别人调试虚拟机的网络问题(CentOS 7系统),习惯性直接改/etc/sysconfig/network-scripts/ifcfg-xxx配置文件,但是不知道为什么重启network后静态i ...
- 插件_热部署_JRebel
一.License Server 1.运行反向代理 GitHub地址:https://github.com/ilanyu/ReverseProxy 下载地址:ReverseProxy_windows_ ...
- bzoj3513
给定n个长度分别为$a_i$的木棒,问随机选择3个木棒能够拼成三角形的概率. $a_i$和$n$都在$10^5$以内 对于每一个i,我们统计比i短的边有多少组合能组成长度<=i的 用1减去这个概 ...
- 【Lintcode】017.Subsets
题目: 题解: Solution 1 () class Solution { public: vector<vector<int> > subsets(vector<in ...