MySQL入门基础-(简单的数据库操作,表操作,约束,外键约束,子查询)

数据库的一些基本概念

  • 数据库 (Database ,DB)

  • 数据库管理系统(Database Managerment System, DBMS)

    Oracle MySQL, SQL Server , DB2,Access

  • 数据库应用程序( Database apply system ,DBAS)

    应用数据库的程序,基本上都是,如qq

  • 数据库管理员(DBA)

  • 数据库管理系统(DBS)

    数据库+数据库管理系统+数据库应用程序+数据库管理员+最终用户

MySQL的安装

  1. linux 下安装MySQL:
    安装mysql: yum -y install mysql-server
    查看系统的服务: cd /etc/init.d
    启动mysql服务: servicw mysqld start
    随机启动mysql服务:chkconfig mysql on
    查看随机启动的服务:chkconfig --list
    查看系统的启动方式:more /etc/inittab
    2.win 下安装mysql
    包资源: MySQL官网下载(下载的是MSI的包资源,直接进行安装),另外一种安装包archives,在命令行里进行安装。具体安装百度即可。

安装后的配置

  • 安装Navicat for mysql 进行连接服务
    在连接上选择mysql数据库,设置主机地址,默认端口3306,密码进行远程连接mysql服务

  • MySQL默认的编码是希腊的,所以,首先修改编码:
    vi /etc/my.cnf
    添加代码:
    default-character-set=utf-8
    重启服务:
    service mysqld restart
    运行程序:
    mysql -h -u -p
    -h主机IP地址
    -u用户名
    -p回车后输入密码

  • 默认远程不可以访问数据库,可以修改这个设置
    在shell下输入:
    mysql_secure_installation
    进行root密码的修改,打开远程等操作(注意,默认情况下,没有密码,直接回车就可以了
    按照提示进行修改,打开允许远程进行登录服务。
    然后,进入msql :
    mysql -uroot -p
    输入密码
    运行:
    grant all on . to root @’%’ identified by '你设置的登录密码‘
    赋予所有的可以登录的远程主机以root用户身份进行登录,并赋予所有的权限
    win下可以命令行中运行来修改。

    SQL语句

    1. DQL(数据查询语言)
      select
    2. DML(数据操作语言)
      insert,update,delete
    3. DDL(数据库定义语言)
      create, alter, drop
    4. DCL(数据库控制语言)
      grant, revoke
    5. TCL(事物控制语言)
      SAVEPOIONT, ROLLBACK, SET TRANSACTION , COMMIT

    DDL

    数据库操作:

    • 创建数据库
      create database 数据库名字
    • 删除数据库
      drop database 数据库名字
    • 切换数据库
      use 数据库名字
    • 查看当前选择的数据库
      select database()
      数据的备份与恢复:
    • 备份:
      进入C:\Program Files\MySQL\MySQL Server 8.0\bin下(配置了环境变量可以不用)
      运行:mysqldum -uroot -p my_db > d:/my_db_backup.sql
      选择将my_db这个数据库备份到d:/my_da_backuo.sql下
    • 恢复:
      mysql -uroot -p 数据库名字 < d:/my_db_backup.sql
      也可以进入某个数据库之后,执行:
      source d:/my_db_backup.sql

    表操作

    • 创建表
      create table t_admin
      (
      id int primary key,
      aname varchar(5) not null,
      address varchar(255)
      )

    • 删除表:
      drop table t_admin;
      注释:-- 注释内容

    • 显示表的信息:desc t_student;

    • 修改表:
      alter table 表名 add|change|drop|modify 列名 类型;

    • 在t_student 表中添加一个新字段
      alter TABLE t_student add sex int(1) DEFAULT 0;

      -- 在t_student 中修改一个新字段
      ALTER TABLE t_student change sname name VARCHAR(300) not null;
      
      -- 全部字段插入
      INSERT into t_student VALUES(1,'zhangsan','shanghai',1);
      
      -- 选择几个字段插入
      INSERT into t_student (id ,name) VALUES (2,'lisi');
      
      -- 某个字段是自增的
      
      -- 给t_student的id修改为自增的选项
      ALTER table t_student MODIFY id int auto_increment;
      -- 在自增的数据进行填写的时候,可以填入任意数据,会自增
      INSERT into t_student VALUES (0,'wu','beijing',0);
      
      -- 修改某一个数据
      update t_student set address='广州' where id=6;
      -- 删除
      delete from t_student where id = 4;
      

表的约束

在这里插入图片描述

主键约束:并不是只有一个字段组成,可以用多个字段组成联合主键
声明方法: id int primary key.
唯一约束: email varchar(255) unique
非空约束:name varchar(255) not null,
检查约束: age number(2) check (age>0 and age <100),
外键约束: foreign key (deptno) references dept(deptno): depto 这个字段是主表dept的deptno列的字段
约束的三种写法:

  1. 直接写在数据的类型面

  2. 写在创建表的下面

    CONSTRAINT titles_ibfk_1 FOREIGN KEY (emp_no) REFERENCES employees (emp_no)
    
  3. 写在表创建完成之后

    alter table t_department add constraint fk_id foreign key (parent_id) references t_department (id);
    

DQL

select

最简单的查询

	use employees;
	select * from dept_manager;
	SELECT dept_no
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值