前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >操作数据表

操作数据表

作者头像
用户1624346
发布2018-04-18 10:47:14
8610
发布2018-04-18 10:47:14
举报
文章被收录于专栏:calmound
  • 打开数据库    use 数据库 ---- use mydata
  • 查看数据库    show databases
  • 显示当前用户打开的数据库   SELECT DATABASE();
  • 创建数据表 语法:CREATE TABLE [IF NOT EXISTS] table_name(             column_name data_type             ) 例子:创建student数据表             CREATE TABLE student(                     id int,                     username VARCHAR(20) NOT NULL,                     age TINYINT UNSIGNED              );
  • 数据表更名   ALTER TABLE tbl_name RENAME [TO|AS] new_tbl_name   例子:ALTER TABLE student RENAME stu;
  • 查看当前数据库下的数据表SHOW TABLES  查看其他数据库下的数据表SHOW TABLES FROM data_name;
  • 查看数据表 SHOW COLUMNS FROM table_name;
  • 查看索引SHOW INDEX FROM tbl_name [FROM db_name];
  • 查看表中的内容SHOW CREATE TABLE tbl_name\G;
  • NOT NULL 与NULL      例子:username VARCHAR(20) NOT NULL 表明username不能为空,每次插入数据的时候必须插
  • 主键约束 PRIMARY  KEY 1. 添加主键约束 语法: ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]]                    PRIMARY KEY [index_type] (index_col_name,...)                         [CONSTRAIN [symbol]]给主键起名字  例子:给student表中的uid设置为主键                         ALTER TABLE student ADD PRIMARY KEY(uid); 注:每张表只能有一个主键,主键保证记录的唯一性,主键自动保存为NOT NULL  例子:将学生的id定义为student表的主键                 id  int PRIMARY KEY 2. 删除主键约束 语法:ALTER TABLE tbl_name DROP PRIMARY KEY;
  • 外键约束      外键用来在两个表的数据之间建立连接,它可以是一列或者多列。一个表可以有一个或多个外键。外键对应的是参照完整性,一个表的外键可以为空值,若不为空值,则每一个外键值必须等于另一个表中主键的某个值。引擎必须为InnoDB。 语法:[CONSTRAINT<外键名>] FOREIGN 字段名1,[字段名2...] REFERENCES<主表名> 主键列1[,主键链2...]              "外键名"为定义的外键约束的名称,一个表中不能有相同名称的外键,"字段名"表示子表需要添加外键约束的字段列:"主表名"表子表外键所一来的表的名称;''主键列"表主表中定义的主键列或组合. 例子:      1.建立主表          CREATE TABLE GRADE(                 gid int PRIMARY KEY,                 gname VARCHER(20)           );       2.建立子表          CREATE TABLE student(                  sid int PRIMARY KEY,                  sname VARCHAR(20)                  FOREIGN KEY(sid) REFERENCES GRADE(gid)   student表的sid参照grade表的gid          )  添加外键约束 语法:             ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]]                 FOREIGN KEY [index_name] (index_col_name,...) reference_definition 例子:student表中的sid参照grape表中的gid添加外键:                    ALTER TABLE student ADD FOREIGN KEY (sid) REFERENCE group(gid);    删除外键约束              ALTER TABLE tbl_name DROP FOREIGN KEY fk_symbol 外键约束的参照操作    1.CASCADE:从父表删除或更新且自动删除或更新子表中匹配的行(ON DELETE CASCADE)    2.SET NULL:从父表删除或更新行,并设置子表中的外键列为NULL。                           如果使用该选项,必须保证子表列没有指定NOT NULL    3.RESTRICT:拒绝对父表的删除或更新操作
  • 表级约束对一个数据列建立的约束(既可以在列定义时声明,也可以在列定义之后声明) 列级约束对多个数据列建立的约束(只能在列定义后声明)
  • 唯一约束 UNIQUE KEY 1.添加唯一约束 语法:ALTER TABLE tbl_name ADD  [CONSTRAINT [symbol]]                     UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,...) 例子:给student表中username设置为唯一约束               ALTER TABLE student ADD UNIQUE (username);               唯一约束可以保证记录的唯一性             唯一约束的值可以为空值(但是只能有一个空值)               每张表可以存放多个唯一约束 2.删除唯一约束 语法:ALTER TABLE tbl_name DROP {INDEX|KEY} index_name; 例子:               首先通过SHOW INDEX FROM tbl_name\G;找出要删除索引的名字               ALTER TABLE student DROP KEY age;
  • 默认约束 DEFAULT        age TINYINT UNSIGNED DEFAULT '18'默认年龄为18岁 
  • 添加/删除默认约束 语法:ALTER TABLE tbl_name ALTER [COLUMN] col_name                     {SET DEFAULT literal | DROP DEFAULT} 例子:为student表中添加一个age的列               ALTER TABLE student ADD age int NOT NULL;  例子:为age添加默认值15              ALTER TABLE student ALTER age SET DEFAULT 15;  例子:删除age的默认值              ALTER TABLE student ALTER age DROP DEFAULT;
  • 自动编号 AUTO_INCREMENT     id int KEY PRIMARY AUTO_INCREMENT 没增加一个记录id就自己增加1,不用人为的赋值了
  • 添加单列    语法: ALTER TABLE table_name ADD [COLUMN] col_name            column_definition [FIRST | AFTER col_name]       若写FIRST表明加在最前面,AFTER表明加在哪一列的后面,若都不写则在最后面     例子:ALTER TABLE student ADD age int;
  • 删除某列 例子:ALTER TABLE student DROP age;
  • 修改列定义 语法:ALTER TABLE tbl_name MODIFY [COLUMN] col_name           column_definition [FIRST|AFTER col_name] 例子:ALTER TABLE student MODIFY uid int unsigned;
  • 修改列名称 语法:ALTER TABLE tbl_name CHANGE [COLUMN] old_col_name            new_col_ame column_definition [FIRST|AFTER col_name]    例子:ALTER TABLE student CHANGE sid ssid INT UNSIGNED NOT NULL;
  • 插入记录 语法:INSERT [INTO] table [col_name,...] VALUES(val,...) ---(INTO可以省略) 例子:INSERT table VALUES('1','TOM',12);给student表的所有列赋值             INSERT table (username) VALUES ('john');给student的uername赋值
  • 查询记录       语法:SELECT expr,... FROM student       例子:SELECT * FROM student;查询student表中的所有的记录
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2014-11-03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档