SQL - 创建 表和数据库

  • 创建和删除数据库
    • create database if not exists sql_store2; //创建
    • drop database if exists sql_store2; //删除
    • -- 创建数据库
      create database if not exists sql_store2;
      drop database if exists sql_store2;
  • 创建表
    • create table customers (someting);
    • -- 创建表
      create table customers (
      	customer_id int primary key auto_increment,
          first_name varchar(50) not null,
          points int not null default 0,
          email varchar(255) not null unique
      );
      drop table if exists cumstomers;
  • 更改表
    • alter table customers (something);
    • 注意,不要在生产环境下更改表,这样会造成非常严重的后果,只在测试数据库上尝试更改,确保它们执行正常,确保它们不会产生任何不良影响后,再在生产数据库中执行它们。
    • -- 更改表
      alter table customers 
      add last_name varchar(50) not null after first_name,
      add city varchar(50) not null,
      modify first_name varchar(255) default '',
      drop points;
  • 创建关系
    • 不同表之间的关系(主键,外键)
    • --创建关系
      drop  table if exists orders;
      create table orders(
      	order_id 	int primary key auto_increment,
          customer_id int not null,
          order_date date not null,
          status tinyint not null,						-- 完成所有列的设置
          foreign key fk_orders_customers (customer_id)	-- 设置外键(列)
      		references customers(customer_id)			-- 引入外键的表
              on update cascade							-- 外键约束
              on delete no action
      );
  • 更改主键/外键
    • 创建或删除 不同表之间的关系
  • 字符集和排序规则
    • 字符集:MySQL会把使用字符集将每个字符转换为它的数值表示,因此字符集是将每个字符映射到数字的表。
    • 排序规则:每个字符集有默认的排序规则,决定了某类语言的字符是如何排序的
    • 更改字符集方法
    • -- 更改字符集方法
      create database db_name		-- 创建数据库时
      	character set latin1;
          
      alter database db_name		-- 创建数据库后
      	character set latin1;
          
      create table table1(		-- 创建表时
      	name varchar(50) character set latin1 not null	-- 指定字符集
      )character set latin1;		
      
      alter table table1			-- 修改表时
      	character set latin1;	
      
  • 存储引擎
    • MySQL的存储引擎,决定了数据如何被存储,以及哪些功能可供我们使用
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值