命令符

作者: 风雨声豪入梦中 | 来源:发表于2018-09-07 10:35 被阅读0次

    常见数据类型:
    4.1 double浮点型,例如double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99;
    4.2 char固定长度字符串类型;char(10)'abc '
    4.3 varchar可变长度字符串类型;varchar(10)'abc'
    4.4 text字符串类型4.5 blob二进制类型
    4.6 date提起类型,格式为:yyyy-MM-dd;
    4.7 time时间类型,格式为:hh:mm:ss;
    4.8 datetime日期时间类型,格式为:yyyy-MM-dd hh:mm:ss5. 在MySQL中,字符串类型和日期类型都要用单引号括起来。'Myname' '2018-01-01'。

    创建数据库create database 数据库名 character set utf8;或者create database 数据库名 charset=utf8;

    使用(切换)数据库use 数据库名

    建表命令;
    CREATE TABLE 表名(
    列名1 列名类型 [约束],
    列名2 列名类型 [约束],
    .....
    列名N 类的类型 [约束]
    )

    定义学生表:
    id name age email
    CREATE TABLE students(
    id bigint,
    name varchar(20),
    email varchar(20),
    age int
    );

    添加一列(本来我已经有4个字段,又想添加一个新的字段)
    ALTER TABLE 表名 ADD 列名 数据类型;

    查看表的字段信息
    desc 表名。

    修改一个表的字段类型
    ALTER TABLE 表名 MODIFY 字段名 数据类型;

    删除一列

    添加一列ALTER TABLE students ADD nums varchar(10);

    删除一列ALTER TABLE students drop nums;

    修改表名
    RENAME TABLE 原始表名 TO 要修改的表名;

    查看表的创建细节
    SHOW CREATE TABLE 表名;

    修改表的字符集gbk
    ALTER TABLE students character set gbk;

    修改表的列名
    ALTER TABLE students change name newname varchar(20);

    删除表
    DROP TABLE 表名;

    查询表中的所有数据
    SELETE * FROM 表名;

    插入操作:
    INSERT INTO 表名 ( 列名1,列名2 ) VALUES (列值1, 列值2...);

    • 添加多条数据(批量插入):

    VALUES后面以逗号隔开

    INSERT INTO 表名(列名1,列名2....) VALUES(列值1,列值2),(列值1,列值2)....;

    更新操作
    UPDATE 表名 SET 列名1=列值1, 列名2=列值2... WHERE 列名=值
    把所有学生的分数改为90
    UPDATE students SET score=90;
    把姓名为zs的学生分数修改为60
    UPDATE students SET score=60 WHERE name='zs';
    把姓名为lisi的年龄修改为20和分数修改为70
    UPDATE students SET age=30,score=70 WHERE name='lisi';
    把wangwu的年龄在原来基础上+1岁
    UPDATE students SET age=age+1 WHERE name='wangwu'

    修改数据库密码步骤:
    mysqladmin -u root -p password 123456

    删除操作# 如果不加过滤条件就是删除所有数据
    DELETE FROM 表名 [WHERE 列名=值]

    删除所有数据

    TRUNCATE TABLE 表名;

    查询所有列
    SELECT * FROM 表名;

    查询指定的列
    SELECT 列名1,列名2 FROM 表名;

    条件查询

    • BETWEEN...AND; 值在什么范围
    • IN(set);
    • IS NULL; (为空)
    • IS NOT NULL; (不为空)
    • AND; 与
    • OR; 或
    • NOT; 非

    查询性别为男,并且年龄为20的学生记录# 添加性别字段
    ALTER table students add gender varchar(2);

    查询

    SELECT * FROM students WHERE gender='男' AND age=20;
    查询学号为1001 或者 名为 zs 的记录
    SELECT * FROM students WHERE id=1001 OR name='zs';
    查询学号为1001 , 1002 ,1003的记录
    SELECT * FROM students WHERE id = 1001 OR id = 1002 OR id = 1003;
    SELECT * FROM students WHERE id in (1001,1002,1003);
    查询年龄为null的记录
    SELECT * FROM students WHERE age IS NULL;
    查询年龄在18-20之间的学生记录
    SELECT * FROM students WHERE age>= 18 AND age<=20;
    SELECT * FROM students WHERE age BETWEEN 18 AND 20;
    查询性别非男的学生记录
    SELECT * FROM students WHERE gender != '男';
    查询姓名不为null的学生记录
    SELECT * FROM students WHERE name IS NOT NULL;

    模糊查询

    • 根据指定的关键字进行查询
    • 使用LIKE关键字后跟通配符
    • 通配符
    • _:任意一个字母
    • %:任意0~n个字母
    • 使用

    查询姓名由5个字母构成的学生记录可以事先自己添加好各种数据# 5个字母就是5个下划线
    SELECT * FROM students WHERE name LIKE '_____';

    查询姓名由5个字母构成,并且第5个字母为's'的学生记录
    SELECT * FROM students WHERE name LIKE '____s';

    查询姓名以'm'开头的学生记录
    SELECT * FROM students WHERE name LIKE 'm%';

    查询姓名中第二个字母为'u'的学生记录
    SELECT * FROM students WHERE name LIKE '_u%';

    查询姓名中包含's'字母的学生记录SELECT * FROM students WHERE name LIKE '%s%';

    mysql -uroot -p;
    进入数据库
    SHOW DATABASES;
    查看库

    DROP DATABASE 库名 ;
    删除数据库

    USE 数据库;
    使用(切换)数据库

    SELECT * FROM 表名;
    查看表里面的内容

    SHOW CREATE TABLE 表名;
    查看表的创建细节

    CREATE TABLE 表名;
    往表里添加内容

    DESC 表名;
    查看表的结构

    CREATE TABLE 表名(
    列名1 列名类型 [约束],
    列名2 列名类型 [约束],
    .....
    列名N 类的类型 [约束]
    );
    建立表格的框架

    UPDATE 表名 SET 列名1=列值1, 列名2=列值2... WHERE 列名=值
    更新并修改指定条件

    SELECT * FROM students WHERE name LIKE 'm%';
    查询姓名以'm'开头的学生记录

    查询性别为男,并且年龄为20的学生记录# 添加性别字段
    ALTER table students add gender varchar(2);

    查询

    SELECT * FROM students WHERE gender='男' AND age=20;

    相关文章

      网友评论

          本文标题:命令符

          本文链接:https://www.haomeiwen.com/subject/jniqgftx.html