SQL基本操作(一)

来源:互联网 发布:邓肯季后赛数据 编辑:程序博客网 时间:2024/05/29 17:04

基本操作

库操作

  1. 新增数据库:
    create database dataname [库选项];
    库选项:约束数据库,分为两个选项:
    字符集设定:charset/characterset(数据存储的编码格式)
    校对集设定:collate 数据比较的规则

    -- mysql
    create database my_database charset utf8;

  2. 查看所有数据库:

    show databases;
  3. 查看指定名称数据库:
    show databases like ‘*‘;
    % : 匹配任意字符
    _ : 匹配制定字符

    show databases like 'my\_%';show databases like 'my%';
  4. 查看数据库的创建语句:

    show create database my_database;
  5. 更新数据库
    数据库名字不可修改 ,仅限修改字符集和校对集(校对集依赖字符集)
    alter database name [库选项]

    alter database my_database charset gbk;
  6. 删除数据库

    drop database my_database;

表操作

  1. 新增数据表:
    create table [if not exists] name(
    字段名字 数据类型,
    字段名字 数据类型
    )[表选项]

    if not exists : 如果表明不存在就创建,否则不执行创建代码,检查表是否存在。
    表选项:
    字符集:charset 具体字符集; – 保证表中数据存储字符集
    校对集:collate 具体校对集
    存储引擎: engine 具体存储引擎(innodb和myisam)

    -- 创建表格要指定所在数据库create table if not exists my_database.student(name varchar(10),gender varchar(10),number varchar(10),age int)charset utf8;-- 或者进入相应数据库中use my_database;create table class(name varchar(10),room varchar(10))charset utf8;
  2. 查看数据表

    show tables;show tables like 'cla%';show create table class;show  create table student\G --  \g == ;    \G 表格转秩
  3. 查看数据表中字段

    desc student;describe student;show columns from class;
  4. 修改数据表
    修改数据表本身和数据表所属数据库
    1.表重命名:renam table 旧名 to 新名;

    rename table class to my_class;

    2.新增字段
    alter table 表名 add [column] 字段名 数据类型 [列属性] [位置];
    位置: 字段名可放在任意位置
    first: 第一个位置
    after:指定字段之后,默认最后一位

    alter table student add column ID intfirst;alter table studentadd gender varchar(10)after id;

    3.修改字段

    alter table student modify name char(10) after id;

    4.重命名字段
    alter table 表名 change 旧字段 新字段名 [属性] [位置];

    alter table studentchange age my_age int;

    5.删除字段

    alter table student drop my_age;

数据操作

  1. 新增数据
    给全表所有字段插入数据,不需要指定字段列表,数据出现顺序要符合字段数据类型。可以一次插入多条,插入字符串用单引号引起。
    insert into 表名 values ( );

    inert into student values(1, 'Lee', 'male'),(2, 'Jac', 'male');

    给部分指定字段插入数值,字段指定顺序与原表无关,但指定数值类型需与字段指定顺序相符合。

    inser into student (name, id, gender) values('laowang', 4, 'male'),('xiaoli', 6, 'male');
  2. 查看数据
    查看所有数据

    select * from student;

    按条件查看数据: 查看id=3的id和name值

    select id , name from student where id = 3;
  3. 更新数据

    updata student  set gender = 'female' where id = 1;
  4. 删除数据

    delete from student where gender = 'male';