• jdbc


    1 sun提供的jdbc完成以下功能  

        1 与数据库建立连接   2 执行sql语句   3 获取执行sql语句执行结果

    2 数据库驱程序是jdbc程序和数据库之间的转换层,负责将jdbc映射成特定数据库调用。

    3 数据库操作语句    默认以分号作为每条命令结束符

          数据库一个实例可以同时包含多个数据库 , 当前实例下包含多少数据库 show databases;

          删除数据库   drop database whe;

          进入数据库    use  test;

          查看表结构  desc test;

           mysql -p password -u username -h hostname

     4 数据库语句

                    1 查询语句  select    2 DML 数据操作语句  insert   update   delete  3  DDL数据定义语句   create alter drop 和 truncate  4 DCL 数据控制  grant 和 revoke

                    5 事务控制  commit    rellback   savepoint 

    5 标识符格式    1 必须以字母开头   2 包括字母,数字,3个特殊字符 (#_$)  3 多个单词连缀,单词间_分割  

     DDL 语句是操作数据库对象的语句,包括创建(create) 删除(drop) 修改(alter) 数据库对象,数据表是最基本的数据库对象,存储数据的逻辑单元,还包括

    创建表 

    CREATE TABLE test
    (
    id INT,
    price DECIMAL,
    NAME VARCHAR(255) DEFAULT 'xxx',
    descs TEXT,
    img BLOB,
    DATE DATETIME
    );
    View Code

    数据类型

    通过子查询建表

    CREATE TABLE hah
    (id INT, pri DECIMAL)
    AS
    SELECT id, price FROM test;
    View Code

    ALTER TABLE test ADD aaa VARCHAR(255) DEFAULT 'xxx';  增加
    ALTER TABLE test MODIFY aaa INT;    修改
    ALTER TABLE test DROP aaa;       删除
    ALTER TABLE haha RENAME ro wowo;    重命名表
    ALTER TABLE test CHANGE descs desb INT; 重命名列

    删除表

    TRUNCATE haha;   表结构没被删除
    DROP TABLE hah;  表结构被删除

    约束:是在表上强制执行的数据校验规则,保证数据库里数据的完整性,当表中数据存在相互依赖时,保护相关数据不被删除。和表一样是数据库对象,为表指定约束有两个时机    1 创建表时  2 以修改表的方式增加约束

    非空约束 not null    null特征  1  所有类型都可以是null int  boolean  2 与Java类似  空字符串不为null  0 也不为null

    id INT NULL;       
    id INT NOT NULL;  // 建表时

    ALTER TABLE test MODIFY aaa INT NOT NULL;  增加非空约束
    ALTER TABLE test MODIFY aaa INT NULL;  取消非空约束

    唯一约束: unique    指定列或指定列组合不允许出现重复 , 但可以出现多个null  ,建立唯一约束时会建立相应的唯一索引。

    DATE DATETIME UNIQUE 定义列时
    CONSTRAINT aas UNIQUE(id, price)
    );

    ALTER TABLE test ADD UNIQUE a(id);
    ALTER TABLE test DROP INDEX a;

    主键约束  : 相当于非空,和唯一约束,即列既不能为空,也不能出现重复值,也不允许出现null

    PRIMARY KEY(id),
    CONSTRAINT aas PRIMARY KEY(id, price)
    );

    ALTER TABLE test ADD PRIMARY KEY a(id);
    ALTER TABLE test DROP PRIMARY KEY;

    外键约束:

    CONSTRAINT aas FOREIGN KEY(t_id) REFERENCES techer(id) // 定义表时
    );
    ALTER TABLE test DROP FOREIGN KEY aas;
    ALTER TABLE test ADD FOREIGN KEY aa(t_id) REFERENCES teacher(id) ON DELETE CASCADE // SET NULL // 删除或致NULL

    check 约束

    建表定义列名后CHECK(id > 0)

    索引  : 当在表上建立主键 唯一  外键约束时,自动建立索引  create index indexname on tablename(列名)  drop index indexname on tablename

    CREATE OR REPLACE VIEW view_test
    AS
    SELECT * FROM test
    WITH CHECK OPTION; 不允许修改视图
    DROP VIEW view_test;

     插入数据 

    INSERT INTO t1(NAME)
    SELECT NAME FROM t2;

    UPDATE t1 SET NAME = 'dd' WHERE id = 1;

    DELETE FROM t1 WHERE id = 1;
    DELETE FROM t1;  // 删除整个表数据 表结构还在

  • 相关阅读:
    Java实现 LeetCode 450 删除二叉搜索树中的节点
    PHP mysqli_field_count() 函数
    PHP mysqli_fetch_row() 函数
    PHP mysqli_fetch_object() 函数
    PHP mysqli_fetch_lengths() 函数
    PHP mysqli_fetch_fields() 函数
    linux修改IP地址
    树莓派玩耍笔记2 -- 我的板子是正品么?(解答一些小问题)
    在一台server上部署多个Tomcat
    第十八篇:融汇贯通--谈USB Video Class驱动
  • 原文地址:https://www.cnblogs.com/whesuanfa/p/7554486.html
Copyright © 2020-2023  润新知