sql 建表

本文详细介绍了数据库创建、表结构设计、索引和引擎选择等关键概念,并通过实例展示了如何在数据库中创建表,配置索引和引擎以优化性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

--
-- Tables
--

DROP DATABASE IF EXISTS `guild`;
CREATE DATABASE `guild`;

CREATE TABLE `guild`.`info` (
	`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT ,
	`name` varchar(20) NOT NULL,
	`owner` BIGINT UNSIGNED NOT NULL ,
	`sid` TINYINT UNSIGNED NOT NULL , -- type and template id
	`desc` varchar(100) NOT NULL,
	`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,-- create time
	PRIMARY KEY (`id`),
	INDEX `owner_INDEX` (`owner`) 
)ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

CREATE TABLE `guild`.`member` (
	`gid` BIGINT UNSIGNED NOT NULL ,
	`uid` BIGINT UNSIGNED NOT NULL ,
	`group` TINYINT UNSIGNED NOT NULL DEFAULT 0, -- type of guild member
	`joinTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,-- create time
	UNIQUE KEY `guild_user_INDEX` (`gid`, `uid`) 
)ENGINE=INNODB DEFAULT CHARSET=utf8;

CREATE TABLE `guild`.`chat` (
	`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT ,
	`gid` BIGINT UNSIGNED NOT NULL ,
	`uid` BIGINT UNSIGNED NOT NULL ,
	`type` TINYINT UNSIGNED NOT NULL, -- system or user
	`content` varchar(100) NOT NULL,
	`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,-- create time
	PRIMARY KEY (`id`) ,
	INDEX `guild_INDEX` (`gid`) 
)ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


以前只会简单的create table, 对于索引、engine等都没有设置过。

做个备忘。

primary 会有个索引。 index会增加新的索引字段。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值