美文网首页
3.DDL组件

3.DDL组件

作者: LucXion | 来源:发表于2023-04-15 16:36 被阅读0次

DDL组件的作用就是创建数据库、数据表,是数据库稳定的基础。

创建数据库
CREATE DATABASE nba; // 创建一个名为nba的数据库
DROP DATABASE nba; // 删除一个名为nba的数据库
创建数据表
// 创建一个表名为 player 的表,player_id为主键自增长从1开始,name长度限制为 6,但是在SQLite中这样的限制不生效
"CREATE TABLE table_name ( player_id  INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT(6));" 
// 删除表
"DROP TABLE table_name;"
// 通过ALTER更改表结构:插入列
"ALTER TABLE table_name ADD COLUMN age INTEGER;"
//  通过ALTER更改表名
"ALTER TABLE table_name RENAME TO new_table_name;"
定义数据表时的约束条件:
DROP TABLE IF EXISTS `player`;
CREATE TABLE `player`  (
  `player_id` int(11) NOT NULL AUTO_INCREMENT,
  `team_id` int(11) NOT NULL,
  `player_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `height` float(3, 2) NULL DEFAULT 0.00,
  PRIMARY KEY (`player_id`) USING BTREE,
  UNIQUE INDEX `player_name`(`player_name`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  1. NOT NULL
  2. CHARACTER SET utf8 : 字符编码UTF8
  3. COLLATE utf8_general_ci :大小写不敏感,对应的utf8_bin
  4. DEFAULT 0.00 : 设置默认值
  5. UNIQUE INDEX player_name(player_name) USING BTREE : 唯一索引 索引名player_name , 对应字段player_name,索引方式 平衡树(还可选HASH),
  6. 存储引擎:
    ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  7. CHECK(height>=0 AND height<3)
player_name -> varchar(255) -> CHARACTER SET utf8 -> COLLATE utf8_general_ci -> NOT NULL -> DEFAULT 'Luc',

更多SQLite的sql语句参考 菜鸟教程
补充:

  1. 索引用于提升数据的检索效率,唯一索引比普通索引多了个唯一性的约束
  2. 主键,标识数据行的唯一标识
  3. 外键,保证表与表之间的完整性,比如表2可以将外键设置为 上面表player的player_id。

设计原则(三少一多):
少 :表个数、字段个数、联合主键个数 越少越好
多 :主键、外键 越多越好

具体操作:
下载 Navicat Premium , 去下载测试sql文件,然后打开Navicat,将下载好的文件打开

相关文章

  • Hive总结

    1.Hive概念,与hadoop关系; 2.安装、部署; 3.DDL操作(和数据库类似); 4.DML操作(数据导...

  • MySQL详解3.DDL语法

    点击进入我的博客 1 数据库 1.1 创建数据库 创建语句 CREATE {DATABASE | SCHEMA} ...

  • Realm数据库

    Realm数据库 1.DML 增删改2.DQL 查询3.DDL 表格 返回结果是列表 列表里是字典 单元测试数据库...

  • vue组件之间的通信

    一、父子组件,父组件=》子组件 父组件中的子组件: 子组件:props 二、父子组件,子组件=》父组件 子组件: ...

  • Angular5 父子组件之间的通信

    一、父组件向子组件通信 父组件: 子组件: 二、子组件向父组件通信 父组件: 子组件:

  • react中调用子组件的方法

    class组件 父组件 子组件 react hook 父组件调用子组件方法 父组件 子组件

  • ReactNative组件间的通信

    父组件向子组件通信 父组件向子组件传值 父组件向子组件传递方法 子组件向父组件通信 子组件向父组件传值 子组件向父...

  • (17.06.21)Vue组件、组件的定义和使用、组件之间的数据

    Vue组件组件        Component     定义组件        公共的组件     使用组件  ...

  • ReactNative组件介绍

    ReactNative组件介绍 View组件Text组件TouchableOpacity组件TextInput组件...

  • 高级任务3

    轮播组件曝光加载组件Tab组件日历组件Modal 组件

网友评论

      本文标题:3.DDL组件

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