单表sql 脚本大全

本文详细介绍了如何在MySQL中管理数据库、创建表、修改表结构、数据操作,包括使用ALTER TABLE、INSERT、UPDATE、DELETE等,以及事务处理、约束、外键和分组聚合等内容。适合数据库管理员和开发者参考。
摘要由CSDN通过智能技术生成

-- 数据库
   -- 查看所有数据库
   SHOW DATABASES
   -- 使用数据库 
   USE zyd;
   -- 查看正在使用的数据库
   SELECT DATABASE();
   -- 创建数据库
   CREATE DATABASE test01;
   -- 删除数据库
   DROP DATABASE test01;
   -- 修改数据库名称
    -- 由于太麻烦,就当没有吧
-- 表
   -- 查看所有表
    SHOW TABLES;
 -- 对表结构进行操作
   -- 对表重新命名
    RENAME TABLE cg TO cr
   -- 查看表结构
    DESC cg;
   -- 增加字段 
       ALTER TABLE cr ADD  c_sex VARCHAR(4);
   -- 修改字段数据类型
       ALTER TABLE cr MODIFY c_sex INT; 
   -- 修改表字段名
       ALTER TABLE cr CHANGE cid c_id VARCHAR(32);
   -- 修改表字符集
       ALTER TABLE cr CHARSET "utf8";
   -- 删除表字段
      ALTER TABLE cr DROP c_sex
 -- 对表数据进行操作(单表)
    -- 插入表数据
    INSERT INTO cr(cid,cname)VALUES ('记得对应前面的字段','前面不写,就得按表顺序写值')
    -- 查看所有数据
    SELECT * FROM cr;
    -- 条件查询用where;
        SELECT * FROM cr WHERE c_sex='男';
    -- 去重查询用distinct
    SELECT DISTINCT(cname) FROM cr;
    -- 特殊运算符 exist;not;<>; null
        SELECT * FROM cr WHERE EXISTS  (SELECT c_id,c_name FROM cj WHERE c_id=cr.cid );
        -- 或者 not exists
        -- <>等于!
        SELECT * FROM cr WHERE c_id IS NOT NULL;
    -- 删除表数据(记得加条件)
    DELETE FROM cr;-- 一条条删
    TRUNCATE FROM cr; -- 全删然后复制
    -- 修改表数据
       UPDATE cr SET cname='11'-- 记得加where条件哦
 -- 排序
    -- asc 升序
    SELECT * FROM cg ORDER BY cid ASC;
    -- desc 降序
    SELECT * FROM cg ORDER BY cid DESC;
    -- asc和desc(按第一个排,然后相同的看第二个字段)
    SELECT * FROM cg ORDER BY cid ASC,cname DESC;
 -- 约束
    -- 主键约束 primary key里面自动设置唯一,非空
       -- 创建时字段处添加
       CREATE TABLE cg( cid INT PRIMARY KEY ,cname VARCHAR(24));
       -- 创建末尾时添加
       CREATE TABLE IF NOT EXISTS cg( cid INT ,cname VARCHAR(24),PRIMARY KEY cid);
       -- 创建结束时添加
       CREATE TABLE IF NOT EXISTS cg(cid INT,cname VARCHAR(24));
       ALTER TABLE cg ADD PRIMARY KEY(cid);
       -- 删除主键
       ALTER TABLE cg DROP PRIMARY KEY;
    -- 唯一约束 Unique
    CREATE TABLE IF NOT EXISTS ci(cid INT UNIQUE,cname VARCHAR(24))
    -- TWO;
     ALTER TABLE cg ADD UNIQUE(cname);
        -- THREE
         CREATE TABLE IF NOT EXISTS co(cid INT,cname VARCHAR(24),UNIQUE(cname))
    -- 非空约束 not null
        CREATE TABLE IF NOT EXISTS cg(cid INT NOT NULL,cname VARCHAR(24)); 
    -- TWO THREE
    -- 默认约束
    CREATE TABLE IF NOT EXISTS cg(cid INT DEFAULT 1);
    -- 外键约束
        CREATE TABLE IF NOT EXISTS cg(cid INT PRIMARY KEY,sid INT ,FOREIGN KEY(sid) REFERENCES ci(cid))

           -- 获取外键名称

               -- 查看建表语句,复制出来查看是最简单的

                   show create table cj;-- 查看建表语句

            -- 外键有名称 之constraint 后跟是自己起的外键名称  

                CONSTRAINT '11' FOREIGN KEY('cid') REFERENCES cg(c_id)

            -- 外键有名称 之constraint 后跟是自己起的外键名称 

               ALTER TABLE stu ADD FOREIGN KEY s_c(s_class) REFERENCES class(class_id) 
    -- 自增关键字 auto_increment
       -- 只展示设置初始值
       CREATE TABLE s2(
       sid INT PRIMARY KEY AUTO_INCREMENT,
       sname VARCHAR(10)
       )AUTO_INCREMENT=100;
 -- 分组函数
    SELECT * FROM ci GROUP BY cname;
 -- 聚合函数
    -- 大多和 group by (分组函数)一起使用
    -- count sum max  min avg;
 -- 关键字having where 在分组之前,having在分组之后
    SELECT * FROM ci GROUP BY cname HAVING AVG(cid)>10;-- 我实在没字段了
 -- 分页(起始索引=(当前页-1)*每页条数)limit
    SELECT * FROM ci LIMIT 0,2;-- 其实页数 每页条数 
 -- 事务
    -- 查看当前提交方式
       SHOW VARIABLES LIKE 'autocommit';
    -- 设置提交方式
       SET @@autocommit=off -- 手动提交
       -- on是自动提交,off是手动提交 
    -- 开启事务
    BEGIN TRANSACTION;
    START TRANSACTION;
    -- 提交事务
       COMMIT
    -- 回滚事务
       ROLLBACK;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值