建表,建库

                                                                                                                      第一节     建表,建库

内容数据库介绍?存储数据的仓库

*********************************************************************

1.数据库服务都那些公司在使用?

购物网站游戏网站金融网站

2.数据服务存储的是什么数据?

帐号信息对应的数据信息

3.提供数据库服务的软件有那些?

帐号信息对应的数据信息

4.提供数据库服务的软件有那些?

开源软件mysqlmongodbredis

商业软件oracledb2SQL SERVER

5.软件是否跨平台?

Linux Unix Windows

6.软件包的来源:官网下载使用操作系统安装光盘自带软件包

7.mysql软件介绍?mysql mariadb

8.关系型数据型软件

要按照一定组织结构存储数据,并且数据和数据之间可以互相关联操作

9.跨平台Linux Unix Windows

可移植性强支持多种语言Python/Java/Perl/PHP

10.生产环境中,数据服务和网站服务一起使用构建网站运行平台

LNMP LAMP WNMP WAMP

11.mysql软件包的封包类型:rpm包源码包

+++++++++++++++++++++++++++++++

非关系型数据库软件NoSQLmongodbredismemcached

可以自定义安装信息key=

*********************************************************


搭建mysql数据库服务器192.168.4.51

试题概述:

装包

修改配置文件

启动服务

查看服务进程和端口号

服务名mysqld

服务的主配置文件/etc/my.cnf

数据目录/var/lib/mysql

日志文件/var/log/mysqld.log

解题参考:

1)除系统自带mariadb mysql数据库软件

]#rpm -qa | grep-i mariadb

]#systemctl stop mariadb

]#rpm -e --nodeps mariad b-server mariadb

]#rm -rf /etc/my.cnf

]#rm -rf /var/lib/mysql

2)安装mysql软件

]#tar -xf  mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar

]#ls *.rpm

]#rm -rf mysql-community-server-minimal-5.7.17-1.el7.x86_64.rpm

]#yum -y install perl-JSON

]#rpm -Uvh  mysql-community-*.rpm

]#rpm -qa | grep -i mysql

3)ls /etc/my.cnf修改配置文件(不需要修改配置文件按默认配置运行即可启动服务)

]#systemctl start mysqld

]#systemctl enable mysqld

4)查看服务进程和端口号

[root@mysql51 mysql]#ps -C mysqld

[root@mysql51 mysql]#netstat -utnlp | grep mysqld


数据库服务的基本使用

解题参考:

2.1使用初始密码在本机连接数据库服务

mysql[-h数据库服务器ip地址-u用户名-p'密码'

2.2重置本机连接密码

mysql>alter user root@"localhost"identified by"密码"

2.3把数据存储到数据库服务器上的过程?

2.4 sql命令分类?DDL DML DTL DCL

2.5 sql命令使用规则?

2.6管理数据库的sql命令及库名的命名规则

2.7管理表的sql命令

建表的语法格式?

create table库名.表名(

字段名类型(宽度)约束条件,

字段名类型(宽度)约束条件,

.....

;

2.8管理记录的sql命令

查看

插入

更新

删除


数据库服务的基本使用  --设置root密码】

2.1使用初始密码在本机连接数据库服务

]#grep password/var/log/mysqld.log

]#mysql-hlocalhost-uroot-p'hqToPwaqf5,g!><'

2.2重置本机连接密码

mysql>set global validate_password_policy=0;只检查密码的长度

mysql>set global validate_password_length=6;密码长度不能小于6个字符

mysql>alter user root@"localhost" identified by "123456";

mysql>quit

]#mysql -hlocalhost -uroot -p123456

mysql>show databases;

2.3让密码策略永久生效

]#vim/etc/my.cnf

[mysqld]

server_id=55

#skip-grant-tables

validate_password_policy=0

validate_password_length=6

:wq

]#systemctl restart mysqld

2.4查看当前登入用户

Select user();

2.5.查看当前登陆数据库服务器用户的权限?

Show grants;

把数据存储在数据库服务器上的过程?

连接数据库服务器(命令行API图形工具)

选择库(存放数据的文件夹)

选择表(就是文件)

插入记录(文件中的行)

断开连接

2.4 sql命令使用规则?

2.5 sql命令分类?

2.6 管理数据库的sql命令

查看show databases;

创建create database库名;

切换use库名;

删除drop database库名;

显示当前所在的库select database();

2.7管理表的sql命令

查看mysql>show tables;

创建mysql>create table gamedb.stuinfo(

->name char(10),

->addr char(20)

->);

删除drop table库名.表名;

查看表记录select*from库名.表名;

查看表结构desc库名.表名;

2.8管理记录的sql命令

查看select*from库名.表名;

插入insert into库名.表名values(字段值列表);

insert into gamedb.stuinfo values("tom","beijing");

insert into gamedb.stuinfo values("bob","beijing");

修改update库名.表名set字段名=where条件;

update gamedb.stuinfo set addr="shanghai"where name="tom";

删除

delete from库名.表名;

delete from gamedb.stuinfo; 


mysql数据类型

3.1数值类型(成绩年龄工资)

每种类型的存储数据的范围都是固定

整数类型(只能存储整数)

微小整型小整型中整型大整型极大整型

tinyint smallint MEDIUMINT INT bigint

*****unsigned使用数值类型有符号的范围。

浮点型(存储小数)

float(M,N)

double(M,N)

M设置总位数

N设置小数位位数

正数.小数总位数整数位小数位

18088.88 7 5 2

3.2字符类型(商品名称籍贯姓名生产厂家)

char(255)固定长度字符类型

varchar(65532)变长字符类型

大文本类型(音频文件视频文件图片文件)

blob

Text

3.3日期时间类型

(注册时间约会时间开会时间入职时间生日)

year YYYY 2018

日期date YYYYMMDD 20180423

时间time HHMMSS 161958

日期时间datetime/timestamp

格式:YYYYMMDDHHMMSS 20180423161958

获取日期时间给对应的日期时间类型的字段赋值

获取日期时间函数

now()获取当期系统的时间

year(日期时间)获取指定时间中的年

month(日期时间)获取指定时间中的月

date(日期时间)获取指定时间中的日期

day(日期时间)获取指定时间中的号(天)

time(日期时间)获取指定时间中的时间

可以使用2位数字给year类型的字段赋值,规律如下:

01-69 20XX

70-99 19XX

datetimetimestamp的区别?

3.4枚举类型(插入记录时记录的值在列举的范围内选择

enum(值列表)单选(性别爱好专业)

set(值列表)多选(性别爱好专业)


 参考案例1

1)建库

create database studb;

2)进库

use studb;

3)建表

create table t1(level smallint,age tinyint);

4)表里建值

insert into t1 values(1024,19),(9,21);

insert into t1 values(21.45,9.87);

5)查看表里数据

select*from t1;


参考案例2

1)建表

mysql>create table t6(

>name char(15),

>age tinyint unsigned,

>pay float(7,2),

>email varchar(30),

>birthday date,

>up_time time,

>start_year year,

>party datetime

);

2)查看表结构

desc t6;

3)表里建值

mysql>insert into t6 values

>("lanyiqun",18,26800,"lyq@tedu.cn",20181001,083000,

>1990,20180501220000);

4)查看表里数据

select*from t6;

****************************************************

时间类型

mysql>select now();

mysql>select year(now());

mysql>select year(20191120);

mysql>select month(now());

mysql>select day(now());

mysql>select date(now());

mysql>select time(now());


参考案例:

1表里建值

mysql>lnsert into t6 values("lucy",21,18800,

      >"lucy@tedu.cn",date(now()),time(now()),year

      >(20111218),now());

mysql>insert into t6(name,start_year)values("tom",69);

2)建表

mysql>create table t7(

      >meetting datetime,

      >party timestamp

      );

3)查看表结构

desc t7;

4表里建值

insert into t7 values(now(),now());

insert into t7(party)values(20161123184518);

insert into t7(meetting)values(20201123153000);

5)查看表里数据

select*from t7;


 *课后总结

客户端把数据储存到数据库服务器的器过程

create database test;

use test;

create table test1(name char(15),address char(30));

desc test1;

insert into test1 values("lisa","beijing");

insert into test1 values("lisa","beijing"),("dc","shanghai");

Select * from test1;

select name from test1

update test1 set address="shanghai";

Select * from test1;

Delete * from test1;

Select * from test1;

show tables;

drop table test1;

show databases;

drop database test;

show databases;

 

原文地址:https://www.cnblogs.com/qingbai/p/12014999.html