前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >初识数据库

初识数据库

作者头像
py3study
发布2020-02-10 22:59:26
5930
发布2020-02-10 22:59:26
举报
文章被收录于专栏:python3python3

什么是数据库

  简单地说,就是存储数据的仓库.

数据库管理系统(DBMS) 

是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。

数据库分类

  关系型数据库(1,oracle数据库  2,mysql数据库  3,MariaDB数据库  4,SQL Server数据库等)

  非关系型数据库(1,SQL Server数据库  2,Redis(key-value) 3,MongoDB(Document-oriented)等)

mysql数据库

  现在使用较多的mysql数据库版本是5.5和5.6,这两个比较稳定.

安装数据库

  1,下载:MySQL

  2,安装

  3,添加环境变量

  4,初始化

    mysqld install

  5,  启动MySQL服务

    net start mysql

    关闭MySQL服务

    net stop mysql

  6,启动MySQL客户端并连接MySQL服务

    mysql -u root -p 连接MySQL服务器

修改root密码

方法1: 用SET PASSWORD命令 

  首先登录MySQL,使用mysql自带的那个客户端连接上mysql。 

  格式:mysql> set password for 用户名@localhost = password('新密码'); 

方法2:用mysqladmin 

关于mysqladmin的介绍: 是一个执行管理操作的客户端程序:它可以用来检查服务器的配置和当前状态,创建和删除数据库,修改用户密码等等的功能,虽然mysqladmin的很多功能.

  通过使用MySQL自带的mysql客户端可以搞定,但是有时候使用mysqladmin操作会比较简单.

  格式:mysqladmin -u用户名 -p旧密码 password 新密码 

  直接在cmd下使用明文设置密码的时候,是不安全的,因为别人可以通过翻看你输入指令的历史记录来查看到你设置的密码,所以我们最好连接进入到mysql里面之后,在进行密

码的修改和设置.

方法3:用UPDATE直接编辑那个自动的mysql库中的user表 

  首先登录MySQL,连接上mysql服务端.

  mysql> use mysql;   use mysql的意思是切换到mysql这个库,修改这个库里面的表.

  mysql> update user set password=password('123') where user='root' and host='localhost';  

  mysql> flush privileges;  刷新权限,让其生效,否则不生效,修改不成功.

修改字符集

  在安装目录下有一个 my-deflaut.ini 文件,这是一个配置文件, 复制一个在里面配置一下字符集.

[mysql]

只针对mysql这个客户端的配置,2中的是全局配置,而此处的则是只针对mysql这个命令的局部配置. 配置客户端连接的时候,指定一下用户名和密码,那么我们在进行mysql客户

端连接的时候,直接输入mysql然后回车就可以了,并且用户是我们下面指定的root用户.

user=root

password=666

如果没有[mysql],则用户在使用mysql系统自带的mysql客户端来执行mysql命令时的配置以[client]为准

default-character-set=utf8

[mysqld]

在执行mysqld命令时,下列配置会生效,即mysql服务启动时生效

character_set_server=utf8

[client]

针对客户端命令的全局配置,当mysql客户端命令执行时,下列配置生效

default-character-set=utf8

mysql数据库的简单操作

SQL语句主要是针对数据库里面三个角色进行操作 , 对象是:库 , 表 , 行 , 操作包括:增删改查。

1,库(data文件夹中的文件夹,每创建一个库 , 这个库的名称就是文件夹的名称,文件夹里面保存着一些这个库相关的初始信息)

增:create database db1 charset utf8; #创建一个库 , 可以指定字符集       

查:show databases; #查看数据库中所有的库

  show create database db1; #查看单独某个库db1的信息       

改:alter database db1 charset latin1; #修改库的字符集 , 注意语句的格式(其他语句也是这么个格式), alter(修改) database(修改数据库) db1(哪个数据库) charset(字

符集) latin1(改成哪个字符集)       

删: drop database db1; #删除数据库

2,表(操作文件,表是上面库文件夹里面的文件)

先切换库:use db1; #要操作表文件,要先切换到对应的库下才能操作表

查看当前所在的是哪个库:select database();

增:create table t1(id int,name char(10) );  

#创建表的时候,和excel一样,需要有字段啊,每个字段还需要只能一下这个字段数据的格式,这里指定的是两个字段列,id和name列,id和name是列名(字段名),id 后面的int的意思说id这一列中的数

据只能是int类型的,name后面的char的意思是,name这一列中的数据只能是char类型的(char表示定长字符串类型),char里面的10是说这个字段的长度最长为10个字符

查:show tables;  #查看当前库中所有的表

  show create table t1; #查看单表的创建信息

  #还可以通过下面两句来查看表信息,以表格的形式展示结果:

  desc t1;

  describe t1;#上下这两句是一样的结果

改:alter table t1 modify name char(3);  #修改字段属性的,将name字段的char长度改为3,改完之后我们在用上面的show create table t1;desc t1;describe t1;来查看一下修改结果.

  alter table t1 change name name1 char(2);

删:drop table t1;

3,行(操作文件(表)中的内容/记录)

增:insert into t1 values(1,'dsb1'),(2,'dsb2'),(3,'dsb3'); #往t1表中插入三行数据,注意你插入的每行内容都要和你创建表的时候的字段个数和字段属性对应好,注意每行数据以逗号分隔.

  insert后面的into可以不用写.

查:select * from t1; #查看t1表中所有字段的数据,select 字段 from 表.

改:update t1 set name='sb' where id=2; #把id为2的行(记录)中的name字段的数据改为sb;id>1;id<=1;等等都可以.

update t1 set name='sb',id=88 where id>2; #对两个字段进行修改

  update t1 set name='sb';#如果不指定where,那么会name字段的所有数据都改成sb.

删:delete from t1 where id=1; #删除id为1的行

清空表:

  delete from t1; #如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始.

  truncate table t1;数据量大,删除速度比上一条快,且直接从零开始.

约束:

  auto_increment 表示:自增

  primary key 表示:约束(不能重复且不能为空)加速查找

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档