A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© kuqi3712 中级黑马   /  2017-12-26 17:03  /  803 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数据库
                MYSQL        6.0版本开始收费
                Oracle       
                DB2               
                SQLServer
                SyBase
                SQLite
               
SQL语言:
                用于操作数据库的代码
                SQL分类
                        DDL:定义型 关键字 create alter drop(创建删除)
                        DCL:insert,delete,update修改(增加)语言
                        DQL:select,from,where查询语言
                       
                常用数据类型varchar,int double data(yyyy-MM-dd)
                create database 数据库名 ;创建数据库
                create database 数据库名 character set 字符集;
                show databases;显示数据库
                drop databases;数据库操作没有确认性(操作后立即生效)
                use 数据库名
                create table 表名{
                        列名1 数据类型 约束,
                        列名2 数据类型 约束,
                        列名3 数据类型 约束
                }
                约束就是限制了列能写什么数据
                        主键约束,被约束的具有唯一性
                        非空约束,不能为空
                        外键约束
                        唯一约束,唯一性
               
                delete form 表名 :一条一条的删 但是不清空auto_inrement
                truncate 表名: 直接删除重新建表 auto_increment被置为0
               
                SHOW TABLES        查看表
                DESC users        查看表结构
                DROP TABLE        删除表
               
                rename table users        to newusers                改表名
                Alter table 表名  add  列名 数据类型  约束 添加新的列
                ALTER TABLE users DROP 删除列名 如果列中有数据 删除之后也全都没有
               
                ALTER TABLE users MODIFY tel VARCHAR(50)
                /*修改数据类型*/
                ALTER TABLE users CHANGE tel newtel DOUBLE
                /*修改列名*/
               
                想数据表中添加数据
                insert into 表名(列名1,列名2,....) values (要添加的值1,值2,值3) 除了数字之外 其他类型必须加''
                        注意:列名和表名的问题
                        对应(值与前面的列名都要对应 且数据类型也要对应;
                添加数据格式:
                        不考虑主键:会出现断号的情况
                                insert into 表名  (列名) values (值)
                添加数据格式:
                        所有值全给出
                        insert into 表名 values (全列值)
                        insert into 表名 (列名1,..2,...3) values (值1,..2,..3),(值1,..2,..3),(值1,..2,..3)
                       
                       
                更新数据:
                        在原有的基础上修改
                        update 表明 set 列1=值1,列2=值2 where 条件 如果不加条件所有的数据都会被修改
                       
                        修改条件的写法:
                                id=6;
                                id<>6;不等于
                                id<=6;
                                id in(1,2,3,4) 满足 1234都执行
                                与或非:
                                                与and
                                                或 or
                                                非 not
                                               
                dos命令窗口中获取内容乱码的解决办法
                输入命令 set names 'gbk'
               
               
                查询语句 :
                select 列名1,列名2... from 表名 where 列明='';
                select distinct 列名 from 表名;
                查询重命名列
                select zname AS '' 查询出来的数据重新建一个列名
               
                查询过程中直接对数字进行计算
                SELECT zname,zmoney+1000 FROM 表名
               
                条件查询
                        between  and
                        in
                        like        '_'一个下划线代表1一个字符(一个汉字)
                        is null
                        SELECT * FROM students WHERE 班级 LIKE '%基础班%'
                       

4 个回复

倒序浏览
完美
回复 使用道具 举报
撒花撒花
回复 使用道具 举报
继续努力
回复 使用道具 举报
温故而知新   加油哦   继续努力
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马