mysql-基礎はこの編を見てすでに十分です


この文章は私ができるだけ全部书いて、この文章を见る友达を助けることができることを望んで~~~javaとmysqlデータベースを接続して一绪に见ることができます
一般的なタイプ:
#     (   )
  # char   varchar    ?
    CHAR(10) VARCHAR(30) TEXT
  # char         ,     
  # varchar         ,         ,          
  # text    ,            (    、  )
  # DB       ''   。

#     
  INT   
  BIGINT    
  FLOAT    
  DOUBLE    
  DECIMAL(20,2)   (          202 )
  
#     
  DATE yyyy-MM-dd ( - - )
  TIME HH:mm:ss:SSS ( : : :  )
  DATETIME yyyy-MM-dd HH:mm:ss:SSS
  TIMESTAMP     1970-1-1        

データベースの作成:create database wei1273356078作成したデータベースを使用する:use wei1273356078データベース作成の詳細を表示:show create database wei1273356078すべてのデータベースを表示:show databasesデータベースの削除:drop database wei1273356078表を作成:大整数bigint、可変文字列varchar、整数int、日付date、プライマリ・キーprimary key、自己成長auto_increment、説明comment
#        
CREATE TABLE tb_student(
	id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '  ',
	stu_no VARCHAR(30) COMMENT '    ',
	stu_name VARCHAR(30) COMMENT '    ',
	stu_age INT COMMENT '    ',
	stu_sex INT COMMENT '0   ;1   ',
	stu_birthday DATE COMMENT '    '
) COMMENT '   ';

追加削除変更(CDUR)
  • 増–C:insert into
  • # value   values       values        
    # value
    INSERT INTO tb_student(stu_no,stu_name,stu_age,stu_sex,stu_birthday) VALUE
    ('001','  ',18,1,'2002-3-14');
    # values
    INSERT INTO tb_student(stu_no,stu_name,stu_age,stu_sex,stu_birthday) VALUES
    ('002','  ',21,0,'2012-6-14'),
    ('003','  ',24,1,'2021-5-11');
    
  • 削除–D:delete
  • #   tb_student     
    DELETE FROM tb_student;
    #       
    # delete            ,        
    DELETE FROM tb_student WHERE stu_age < 22;
    
  • 改–U:update
  • #     (    )
    UPDATE tb_student SET stu_age = 10;
    #            (  where  【        】)
    UPDATE tu_sudent SET stu_age=12 WHERE id=2;
    # set            ,      
    UPDATE tb_student SET stu_birthday='2020-07-01',stu_name='  ' WHERE id=3;
    
  • チャ–R:select一番柄が多くて毛皮もわかる
  • # *          
    SELECT * FROM tb_student;
    #      all
    SELECT id FROM tb_student;
    #             ID
    SELECT DISTINCT id FROM tb_student;
    #      like
    SELECT * FROM tb_student WHERE stu_name like '% ';
    # _                         
    SELECT * FROM tb_student WHERE stu_name LIKE '_ ';
    

    where条件:
    # and     
    SELECT * FROM tb_student WHERE id=1 AND stu_no='001';
    # or            
    SELECT * FROM tb_student WHERE stu_age > 18 OR id=5;
    # <>   !=          
    SELECT * FROM tb_student WHERE id <>10;
    # null   is null   is not null
    SELECT * FROM tb_student WHERE stu_birthday IS NULL;
    SELECT * FROM tb_student WHERE stu_birthday IS NOT NULL;
    #         
    SELECT * FROM tb_student WHERE stu_age>=10 AND stu_age<=20;
    SELECT * FROM tb_student WHERE stu_age BETWEEN 10 AND 20; 
    

    ページングlimit:
    #  LIMIT 0,3      0       ,  3   
    SELECT * FROM tb_student LIMIT 0,3;
    SELECT * FROM tb_student LIMIT 2,3;
    

    一般的な関数:
    # AS         
    #         sum() avg() max() min() count()
    #          
    SELECT SUM(stu_age) AS AGE_SUM FROM tb_student;
    #           
    SELECT AVG(stu_age) AS AGE_AVG FROM tb_student;
    #         
    SELECT COUNT(id) FROM tb_student;
    #     
    SELECT ABS(-14);
    #         
    SELECT LENGTH('adsfklj') AS char_size;
    #      
    SELECT CONCAT('aa','bb','vv','cc');
    #       (    )
    SELECT FORMAT(3.1415926,3);
    #     
    SELECT CURRENT_DATE();
    

    グループグループグループby:
    #                          
    SELECT id,AVG(stu_age) FROM tb_student GROUP BY stu_sex;
    # as       
    #                
    SELECT stu_sex,SUM(stu_age) AS AGE_SUM FROM tb_student GROUP BY stu_sex;
    #                  50    ,having                
    SELECT stu_sex,SUM(stu_age) AS AGE_SUM FROM tb_student GROUP BY stu_sex HAVING AGE_SUM>50;
    

    並べ替え:
    #    ASC(  )  DESC(  )
    SELECT * FROM tb_student ORDER BY stu_age ASC;
    SELECT * FROM tb_student ORDER BY stu_age DESC;
    #       ,               ,            
    SELECT * FROM tb_student ORDER BY stu_age ASC,stu_no DESC;
    

    カスタム関数:
    #         ;    $$                
    #        ,    ;    
    DELIMITER $$
    
    CREATE
    	#                     
        FUNCTION `wei1273356078`.`func`()
        #       
        RETURNS INT
        #   
        BEGIN
    	#       
    	DECLARE age INT;
    	#        
    	SET age = 18;
    	#       
    	RETURN age;
    	#   
        END$$
    #      $$    
    DELIMITER ;
    
    
    #                 
    SELECT func();
    

    ストレージプロセスを実現するには、もう1つのテーブルdt_userを作成する必要があります.また、テーブルにはid(自己成長)、nameおよびpwdの3列があります.タイプはidはいintのほか、すべてvarcharです.効果を見るには、dt_user表に内容を追加する必要があります.
    ストアド・プロシージャ:
    #         p_login     
    DROP PROCEDURE IF EXISTS `p_login`;
    #        $$
    DELIMITER $$
    #         
    CREATE PROCEDURE `p_login`
    (
      _name VARCHAR(20),
      _pwd VARCHAR(20)
    )
    BEGIN
      #       
      DECLARE _count INT;
      #        (mysql   print,  select)
      SELECT COUNT(*) INTO _count FROM `dt_user` WHERE `name` = _name AND `pwd` = _pwd;
      #              
      IF _count > 0 THEN 
    	SELECT '' AS result;
      ELSE 
    	SELECT '        ' AS result;
      END IF;
    END;
    $$
    #         
    DELIMITER ;
    
    
    #               
    CALL p_login('user1', '123');
    #       ,        
    #      '        ',        
    

    フリップフロップ:以下のコードでsql文を追加すると学生表のid1の学生年齢に1が加算されます
    DELIMITER $$
    
    CREATE
        # BEFORE/AFTER             /  
        # INSERT/UPDATE/DELETE         
        #                ,          +1
        TRIGGER `wei1273356078`.`tri_update_stucount` AFTER INSERT
        ON `wei1273356078`.`tb_student`
        FOR EACH ROW 
        BEGIN
    	UPDATE tb_student SET stu_age = stu_age+1 WHERE id=1;
        END$$
    
    DELIMITER ;
    
    
    #       sql     
    INSERT INTO tb_student(stu_no,stu_name,stu_age,stu_sex,stu_birthday) VALUE
    ('004','wei',15,0,'2020-3-14');
    #       id 1        ,         。。