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;
    
  • 相关阅读:
    (Go)11.九九乘法表示例
    (Go)10.流程控制示例
    (Go)09.指针赋值修改示例
    (Go)08.time示例
    (Go)07.strings与strconv的示例
    (Go)07.Go语言中strings和strconv包示例代码详解02
    (Go)06. Printf格式化输出、Scanf格式化输入详解
    kafka参数在线修改
    vs code golang代码自动补全
    JVM 方法区
  • 原文地址:https://www.cnblogs.com/hyc123/p/11560035.html
Copyright © 2011-2022 走看看