zoukankan      html  css  js  c++  java
  • mysql 的使用

    1,mysql 是一种开放源代码的关系类型数据库管理系统

    2,在mysq 中我们通常把   行  表示:记录   列 表示:字段

    3,mysql中数据是以表的形式存储在数据库中的

    4,启动mysql

        通过操作系统的界面设置开启mysql

        也可通过在DOS窗口输入 net start mysql 指令启动mysql

        通过输入 net stop mysql 指令关闭mysql

    5,通过mysql 命令链接mysql 数据库

         mysql -h服务器主机地址 -u用户名 -p密码

      

      没有密码你直接回车就能链接mysql数据库

    5,创建数据库    CREATE DATABASE 数据库名;

          

        创建了 t141 的数据库

         查看数据库列表     SHOW DATABASES;

         

    6,选择数据库  USE 数据库名;

    7,删除数据库  DROP DATABASES 数据库名;

       注意;这条命令是不支持使用的,因为这条命令无论你是不是在使用mysql 是都可以删除的。也就是说这是一件很危险的事。

    8,创建表  CREATE TABLE 表明(

        表格中的内容

          

         mysql 中的注释  单行注释: #内容    多行注释:/*内容*/

     ###在创建三个数据表,方便做主键和外键以及在四个表之间添加约束

      (2) #年级表  

    CREATE TABLE grade  
    (
      `gradeID` INT PRIMARY KEY NOT NULL #年级编号
    )

           (3)#科目表 

    CREATE TABLE SUBJECT  
    (
       subjetid INT PRIMARY KEY NOT NULL AUTO_INCREMENT, #科目编号
       subjectname VARCHAR(32),               #科目名字
       gradeid INT(4),             #成绩编号
       classhour INT                
    )

           (4)#成绩表

    CREATE TABLE Result  
    (
       
       id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
       studentno INT NOT NULL,
       subjectid INT NOT NULL,
       examdate DATETIME,
       studentresult INT
       
    )	
    

     我们在上面的代码中都设置了主键,那么想要把四个表的关系设置,就要设置外键。

        一下代码设置不同表之间的外键,来表示表关系

    #在student中创建grade表外键
    ALTER TABLE student ADD CONSTRAINT fk_grade_student_gradeid 
    FOREIGN KEY(gradeID)
    REFERENCES grade(gradeID)
    
    #在subject中创建grade外键
    ALTER TABLE SUBJECT
    ADD CONSTRAINT FK_Grade_Subject_Gradeid FOREIGN KEY(gradeID)
    REFERENCES grade(gradeID)
    
    #在Result中创建subject的外键
    ALTER TABLE result
    ADD CONSTRAINT FK_Subject_Result_subjectid FOREIGN KEY(subjectid)
    REFERENCES  `subject`(subjectid)
    
    #在Result中创建student的外键
    ALTER TABLE result
    ADD CONSTRAINT FK_Student_Result_studentno FOREIGN KEY(studentno)
    REFERENCES student(studentno)
    

     注意:外键只能设置在外键表中,一个表中可以包含多个表(那么那一个表表示主表,那多个表表示外表)

    表中添加数据:代码如下

    #注意:student表小括号后面是表中各列的名字,可以没有顺序,但是必须是完整的,除了自增列。
    INSERT INTO student(loginPwd,studentName,sex,gradeID,phone,address,bornDate,email,identityCard)
    #values后面要想加多可数据,那么(数据1),(数据2)。。这样逗号分隔,而且里头内容与上面的student表后面小括号内容 一 一对应。 VALUES('123','娜娜','女',1,'13847524834','高雄','2017/7/11','905352007@qq.com','12345678'), ('321','小黄','男',1,'13847524567','澳大利亚','2017/7/11','905352007@qq.com','12345678'), ('123','娜娜','女',1,'13847524834','高雄','2017/7/11','905352007@qq.com','123456789900988');

    9,修改表

    (1)添加字段

    ALTER TABLE grade ADD idDel INT NOT NULL   # 不要忘了数据类型

    (2)删除字段

    ALTER TABLE grade DROP idDel

    (3)修改字段内容

    ALTER TABLE grade CHANGE remark2 remark VARCHAR(32)   注意: 在修改的时候,必须添加数据类型

    (4)想要删除一个一个表中的约束,发现与其他的表有关系,那么需要以下代码解决:

    先执行如下命令

     步骤1: alter table  表名

                   drop foreign key 外键的名称

       步骤2:点击鼠标,删除

    10.检索数据库

    (1)检索所有邮箱为null的学生

    select * from student where email='null'

    (2)统计表中有几条记录

    select counct(studentresult)from result

    还有常用的其他计算函数:sum()获取综合     max()最大值  min()最小值   avg()平均值

    (3) 常用的字符串函数

    upper()字符串大写 ,          substring(a,A,B)a的字符串中的截取位置从A到B检索

    concat(str1,str2)拼接字符串          insert('这是MySQL数据库',3,5,'Oracle') 找到mysql位置,改成 oracle

    (4)常用的时间函数

    now()   获取默认的时间            curdate()获取当前日期,不获取时间

    curtime()只获取系统时间           week()获取当前日期是该年中的第几周

    datediff(now(),'1992-06-01')两个时间差,得到的是天数

    adddate(NOW(),-3)两个时间加一起,得到的也是天

    (5)常用的数学函数

     ceil() 天花板  向上取整   floor() 向下取整   rand()随机数

    语法: SELECT CEIL(2.0001)

    11,order by 排序

    语法:SELECT * FROM student ORDER BY sex,borndate DESC

    student 表中检索性别sex 和 出生年月borndate 按降序排序

    还有升序排序 关键字 asc

    12,limit 分页

    语法:SELECT * FROM student LIMIT 2,2

    从第三个字段开始检索两个内容

    注意:第一个数字检索的是从下标从0开始

    CREATE TABLE grade   #年级表(  `gradeID` INT PRIMARY KEY NOT NULL )

  • 相关阅读:
    初识分布式计算:从MapReduce到Yarn&Fuxi
    日志的艺术(The art of logging)
    关于负载均衡的一切:总结与思考
    打印中文dict list的各种姿势
    不想再被鄙视?那就看进来! 一文搞懂Python2字符编码
    什么是分布式系统,如何学习分布式系统
    再论分布式事务:从理论到实践
    从银行转账失败到分布式事务:总结与思考
    git命令
    IntelliJ idea 中使用Git
  • 原文地址:https://www.cnblogs.com/bb1008/p/7137654.html
Copyright © 2011-2022 走看看