欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

数据库简介

程序员文章站 2023-01-13 13:51:40
结构化查询语言SQL Structured Query Language 本质就是将大量的“数据值”通过数据库管理系统进行某种复杂但是逻辑结构上清晰有序的存储 一、常用术语 数据库database 数据库管理系统dbms 表(数据表)table 行row,记录record 字段field,列colu ......

结构化查询语言SQL Structured Query Language

  本质就是将大量的“数据值”通过数据库管理系统进行某种复杂但是逻辑结构上清晰有序的存储

一、常用术语

  数据库database

  数据库管理系统dbms

  表(数据表)table

  行row,记录record

  字段field,列column

二、数据库

  连接数据库  mysql -u root -p
  查看所有数据库  show databases;
  选择数据库  use mysql;
  查看表  show tables;
  查看所有数据  select * from user;
  查看user里面的用户名和密码  select user,password from user;
  创建数据库字符集utf8  create database php0307 charset utf8;
  删除数据库  drop database php0307;

注意:
  1.符号都是英文半角
  2.结束符号是英文分号
  3.可以多条命令一起执行
  4.引号问题

三、windows窗口

  windows 窗口命令
  ipconfig 查看本机ip地址
  ping ip地址 连接指定ip的机器
  D:切换盘符
  cd 目录切换
  cd / 直接到根目录
  cd../ 上级目录
  cd ./wamp/bin/mysql 进入指定位置
  cd d:/wamp/bin/mysql        绝对路径            (cd和后面有空格,就是命令和后面有空格)
  cls 清屏
  dir 查看当前目录的内容
  tab键可以补全路径名称

四、表

  创建表
  create table [if not exists] 表名(字段1 数据类型 [约束或索引列表],字段2 数据类型 [约束或索引列表])[表选项列表];

  创建用于登录的表
  create table if not exists login(); 如果存在就不创建了
  (另一种办法
        drop table if exists login;
        create table login();
            这样会删掉老的表!)

  查看表  必须先进入库   (若不执行 show databases 或 use 其他表则一直在这个库里)
  show tables;(空为empty)
  删除表  drop table www;
  查看表结构  desc 表名;  desc www;
  出现的表格里面
    Null 里面为 yes 则可以为空
    Key  主键  (唯一标识,所以不可以重复)
    default 默认值

  数据类型   数值 int   时间日期 datatime   字数串 varhar

   自增的条件 必须是主键 必须是int

create table zuoye0420(
    id int auto_increment not null,    /*id 整形 自动累加 不能为空*/
    f1 float comment '小数',     /*f1 小数*/
    f2 decimal(20,5) default 12.3,    /*f2定点型 总长20 小数位数5 默认值12.3*/
    f4 varchar(20) comment'f4字符长度20',
    id2 int,     /*意图作为set_test表的外键*/
    primary key(id),    /*id为主键 既是约束也是索引*/
    unique key(f1),    /*唯一值 既是约束也是索引*/
    key(f2),    /*只是索引*/
    foreign key (id2) references set_test(id)    /*外键约束*/foreign key (字段名1,字段名2, .... ) references 表名2(字段名1,字段名2, .... )
)
    comment = '这是一个建表大全语句',
    engine = MyIsam,    /*表的存储引擎名*/
    auto_increment = 1000;    /*自动增加从1000开始*/

五、表选项
  添加数据 在库里面操作
    insert into login(userid,password,username,sex) values (‘zhangsan’,'123','张三','1');
    字段和值一一对应
    值的数据类型是字段的数据类型
    当插入字段是表中全部字段时  字段可省略
      insert into login values (‘zhangsan’,'123','张三','1');
    不是全部字段 字段要写
    添加多条数据时逗号分隔
      insert into login(userid,password,username,sex) values (‘zhangsan’,'123','张三','1'),(‘zhangsan’,'123','张三','1');
  删除语句 不加where则为全部删除
    delete from login;
  修改语句 全部修改了!
    update login set name = ‘老王’,sex=0;

  加条件删除修改  关键字 where  找数据 字段 = 值
    delete from login where userid = ‘lisi’;
    字段 = 值 写完整      把lisi 和 wangwu 的性别改为女 or为或者
    update login sex = 0  where userid = ‘lisi’or userid = ‘wangwu’;

  distinct 消除行,所以可以看有哪几类   在select 后 字段名之前
    select distinct depart.count(*) from teacher;  能出depart的数量