zoukankan      html  css  js  c++  java
  • 数据库基本操作

    数据库

    """
    1、什么是数据库:管理数据的系统 - 安装某种管理数据的系统 - 管理的对象本质是文件
    2、存储数据的位置:内存、硬盘
    3、什么是系统:运行在硬件基础上,管理其他软件
    """
    
    # 数据库的组成
    """
    库:存放多张表 - 文件夹
    表:包含多条相同结构的记录 - 文件
    记录:包含多个key-value键值对的一条数据 - 二进制数据
    字段:描述信息 - 信息本身 == key-value - 二进制数据
    
    stu
    id  name    age     gender
    1   Bob     18      男
    2   Tom     17      女
    ...
    
    teacher
    ...
    
    """
    

    数据库的分类

    # 1)关系与非关系
    #   关系:数据库中表与表之间有联系 - mysql
    #   非关系:没有表概念 - redis、mongodb(介于关系与非关系)
    
    # 2)内存与硬盘
    #   硬盘:数据可以永久存储 - mysql、mongodb
    #   内存:数据的存取效率极高 - redis、memcache
    
    # 3)sql与nosql
    #   sql:数据库操作通过sql语句
    #   nosql:数据库操作就是key-value形式(value就是一条记录)
    #           stu - {'name': 'Bob', 'age': 18}
    #           stus - [{'name': 'Bob', 'age': 18}, {'name': 'Tom', 'age': 18}]
    #           name - 'Jerry'
    

    连接数据库

    1)游客登陆(不一定能登入,登入了也啥都不能干)
    >: mysql
    
    2)账号密码登录
    >: mysql -u root -p
    再输入密码,没有任何提示,没有密码直接回车
    
    3)连接指定服务器的mysql
    >: mysql -h ip地址 -P 端口号 -u 账号 -p
    回车后敲入密码
    eg:
    >: mysql -hlocalhost -P3306 -uroot -p
    
    4)退出数据库
    >: quit
    >: exit
    

    用户信息查看

    1)查看当前登录的用户
    mysql>: select user();
    
    2)root权限下可以查看所有用户信息
    mysql>: select * from mysql.user;
    mysql>: select * from mysql.user G
    mysql>: select user,password,host from mysql.user;
    
    3)root登录下,删除游客(操作后要重启mysql服务)
    mysql>: delete from mysql.user where user='';
    
    4)root登录下,修改密码(操作后要重启mysql服务)
    mysql>: update mysql.user set password=password('root') where host='localhost';
    
    5)没有登录
    >: mysqladmin -u用户名 -p旧密码 -h域名 password "新密码"
    eg>: mysqladmin -uroot -p12345678 -hlocalhost password "root"
    
    6)root登录下,创建用户
    mysql>:grant 权限们 on 数据库名.表名 to 用户名@主机名 identified by '密码';
    

    数据库的基本操作

    1)查看已有数据库
    mysql>:show databases;
    
    2)选择某个数据库
    mysql>:use 数据库名
    
    3)查看当前所在数据库
    mysql>:select database();
    
    4)创建数据库
    mysql>:create database 数据库名 [charset=编码格式];
    eg>: create database owen;
    eg>: create database zero charset=utf8;
    eg>: create database tank;
    
    5)查看创建数据库的详细内容
    mysql>:show create database 数据库名;
    eg>: show create database owen;
    
    6)删除数据库
    mysql>: drop database 数据库名;
    eg>: drop database tank;
    

    表的基本操作

    前提:先选取要操作的数据库
    
    1)查看已有表
    mysql>:show tables;
    
    2)创建表
    mysql>:create table 表名(字段们);
    eg>: create table student(name varchar(16), age int);
    eg>: create table teacher(name varchar(16), age int);
    
    3)查看创建表的sql
    mysql>:show create table 表名;
    eg>: show create table student;
    
    
    4)查看创建表的结构
    mysql>:desc 表名;
    
    5)删除表
    mysql>: drop table 表名;
    eg>: drop table teacher;
    

    记录的基本操作

    1)查看某个数据库中的某个表的所有记录,如果在对应数据库中,可以直接查找表
    mysql>: select * from [数据库名.]表名;
    注:*代表查询所有字段
    
    2)给表的所有字段插入数据
    mysql>: insert [into] [数据库名.]表名 values (值1,...,值n);
    eg:如果给有name和age两个字段的student表插入数据
    1条>:insert into student values ('Bob', 18);
    多条>:insert into student values ('张三', 18), ('李四', 20);
    指定库>:insert owen.student values ('张三', 18), ('李四', 20);
    
    3)根据条件修改指定内容
    mysql>: update [数据库名.]表名 set 字段1=新值1, 字段n=新值n where 字段=旧值;
    eg:> update student set name='王五', age='100' where name='张三';
    注:i) 可以只修改部分字段 ii) 没有条件下,所有记录都会被更新
    eg:> update student set name='呵呵';
    
    4)根据条件删除记录
    mysql>: delete from [数据库名.]表名 where 条件;
    eg:> delete from student where age<30;
    
  • 相关阅读:
    HearthBuddy投降插件2019-11-01的使用
    正则表达式在线分析 regex online analyzer
    Tips to write better Conditionals in JavaScript
    The fileSyncDll.ps1 is not digitally signed. You cannot run this script on the current system.
    Cannot capture jmeter traffic in fiddler
    JMETER + POST + anti-forgery token
    input type color
    HearthBuddy修改系统时间
    What are all the possible values for HTTP “Content-Type” header?
    UDK性能优化
  • 原文地址:https://www.cnblogs.com/jie9527-/p/11565433.html
Copyright © 2011-2022 走看看