day01-1 mysql 初识
---------------------------------------------- 1.何为MySQL ?
1) 是一款数据库管理软件(DBMS) 2) 类似市场的Oracle,DB2,SqlServer,.... 3) 有MySQL-AB公司研发,后被sun收购. 4) 有商业版,社区版(半开源),.....
2.MySQL 架构? 1)C(client)/S(server)
2)底层实现client(socket),server(ServerSocket) 3)基于tcp/ip协议(面向连接)
3.MySQL 用意?
1)更好的存储数据.(数据及数据的关系) 2)更好的管理数据.(约束,安全,使用) 市场上数据库体系:
1)关系型数据库 (MySQL,Oracle,DB2,....) 2)非关系型数据库(HBase,MonDB,....) BAT:
1)百度:重要的数据(搜索行为数据) 2)阿里:重要的数据(交易数据) 3)腾讯:重要的数据(用户交际数据)
4.MySQL 安装,卸载?(以绿色解压为例) 1) 下载,并解压:
解压在c盘根路径. 2) 安装mysql
2.1) 命令行切换到C:\\mysql-5.5.11-win32\\bin目录 2.2) 执行安装操作 mysqld -nt-install mysql 2.3) 启动服务器 net start mysql
3) 卸载mysql
3.1) 停止服务器:net stop mysql
3.2) 命令行切换到C:\\mysql-5.5.11-win32\\bin目录 3.3) mysqld -remove mysql
5.mysql 登录退出
5.1) 登录
mysql -u root -p
mysql -u root -h localhost -p
连接远程:
mysql -u tarena -h 192.168.100.100 -p
登录ok: mysql>
5.2)退出 quit (\\q) exit
5.mysql 常用命令
1) select user();显示当前登录用户 2) status: 显示数据库信息 3) select now(): 显示当前时间
4) show databases;显示当前用户有哪些数据库 5) ? show 查看show命令的帮助
6) ? functions (查看系统中的一些函数)
说明: ? 等价于help
? functions 等价于 help functions
--------------------------------------------------------------------------------------------- MySQL-2 SQL 语句 1.何为SQL ?
1) 结构化查询语言.
2) 一个标准(操作数据库)
3) 不同厂商对SQL进行了相应的扩展. 4) 是客户端与服务端数据交互的一个桥梁.
2.SQL 分类?
1) DDL (数据定义语言):create,alter,drop,...
2) DML(数据操纵语言): insert,update,delete,select,...
3) DCL (数据控制语言): grant,revoke,commit,rollback,savepoint
-------------------------------------------------------------------------------------------- MySQL-3: SQL (DDL)-1 数据库操作
1.创建数据库?(对象的集合(表,视图,索引,...)) 1)语法: ? create database; 2)案例:
2.1) create database tarena; 2.2) create database tarena          character set utf8;
2.3) create database if not exists tarena        default character set utf8;
显示创建的数据库用: show databases; 使用数据库之前应打开: use tarena;
2.修改数据库(Alter): 一般修改编码 语法: ? alter database 案例: alter database tarena          character set gbk;
3.删除数据库?
语法: ? drop database
案例: drop database tarena;
说明:执行文件中的sql (文件中可以写很多sql,以\";\"结尾) source d:\\a.sql
-------------------------------------------------------------------------------------------- MySQL-4: SQL (DDL) 数据库表 1.何为表table(有行有列) 1) 数据库中最基本存储单元 2) 所有的数据都要存储在表中.
2. 创建表?
语法: ? create table
create table 表名(列名 类型 [约束] [默认值],....) 案例:(首先打开数据库)
create table if not exists student(     id int primary key,
name varchar(20) not null default 't',     birthday date,
phone varchar(12)  unique ) default character set utf8;
显示表结构: desc student
显示数据库有哪些表: show tables; 主键:
a) 表中的一个或多个字段
b) 字段的值必须是非空且唯一 c) 能够唯一代表某条记录
创建表时字段的类型
1)数值型(tinyint,int,bigint,decimal,...) 2)字符型(varchar,char)
3)日期型(date,datetime,timestamp) 4)其它 (blob,clob,....)
创建表时字段的约束 1) primary key 2) not null
3) unique (唯一)
4) foreign key (表关系时讲)
案例2: 创建teacher表 (作业)
3. 修改表? (添加字段,修改字段,删除字段,...)
语法: ? alter table  案例: 作业????? 4. 删除表?
语法:? drop table 案例: 作业????
--------------------------------------------- 扩展: 用户管理 1.创建用户 1) 本机用户
create user 'tarena'@'localhost' identified by 'tarena';     登录
mysql -u tarena -p
2) 远程用户
create user 'gsd1402'@'%' identified by 'gsd1402'     登录
mysql -u gsd1402 -h 192.168.188.99 -p
2.删除用户
drop user 'gsd1402'@'%';