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 ...
随机推荐
- 不依赖外部js es 库 实现 点击内容 切换
<!DOCTYPE html> <html lang="zh-cmn-Hans"> <head> <meta http-equiv=&qu ...
- JAVA中int与String类型的相互转换
Java的int和String类型间互相转换,小功能但是经常用到,下面是几种实现的方法: 字符串类型String转换成整数int 1. int i = Integer.parseInt([String ...
- FI模块与SD、MM的接口配置方法
[转自 http://blog.itpub.net/195776/viewspace-1023910/] 1 FI/SD 借口配置FI/SD通过tcode VKOA为billing设置过帐科目,用户可 ...
- (转)JavaScript中==和===的区别
== 用于比较 判断 两者相等 ==在比较的时候可以转自动换数据类型 ===用于严格比较 判断两者严格相等 ===严格比较,不会进行自动转换,要求进行比较的操作数必须类型 ...
- [数据挖掘课程笔记]无监督学习——聚类(clustering)
什么是聚类(clustering) 个人理解:聚类就是将大量无标签的记录,根据它们的特点把它们分成簇,最后结果应当是相同簇之间相似性要尽可能大,不同簇之间相似性要尽可能小. 聚类方法的分类如下图所示: ...
- python -- redis连接与使用
前面我们简单介绍了redis nosql数据库,现在我们在python里面来使用redis. 一.python连接redis 在python中,要操作redis,目前主要是通过一个python-red ...
- 使用valgrind进行内存泄漏和非法内存操作检测
valgrind是一个强大的工具,最常用的功能是用它来检测内存泄漏和非法内存的使用.要想让valgrind报告的更加细致,请使用-g进行编译. 基本命令如下: $ valgrind --tool=me ...
- 使用C++模拟C#的委托机制
1. [代码][C/C++]代码 //Event.h #ifndef _EVENT_H_#define _EVENT_H_class EmptyObject {};template<typen ...
- PHP闭包详解
匿名函数 提到闭包就不得不想起匿名函数,也叫闭包函数(closures),貌似PHP闭包实现主要就是靠它.声明一个匿名函数是这样: $func = function() { }; //带结束符 可以看 ...
- linux网络编程 gethostbyname()
gethostbyname()返回对应于给定主机名的包含主机名字和地址信息的hostent结构指针.结构的声明与gethostaddr()中一致. 返回对应于给定主机名的主机信息. #include ...