创建表

简单的方式

CREATE TABLE person (
number INT(11),
name VARCHAR(255),
birthday DATE
);

或者是

CREATE TABLE IF NOT EXISTS person (
number INT(11),
name VARCHAR(255),
birthday DATE
);

查看mysql创建表:

SHOW CREATE table person;CREATE TABLE `person` (`number` int(11) DEFAULT NULL,`name` varchar(255) DEFAULT NULL,`birthday` date DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

查看表所有的列:

SHOW FULL COLUMNS from person;
+----------+--------------+-----------------+------+-----+---------+-------+---------------------------------+---------+
| Field    | Type         | Collation       | Null | Key | Default | Extra | Privileges                      | Comment |
+----------+--------------+-----------------+------+-----+---------+-------+---------------------------------+---------+
| number   | int(11)      | NULL            | YES  |     | NULL    |       | select,insert,update,references |         |
| name     | varchar(255) | utf8_general_ci | YES  |     | NULL    |       | select,insert,update,references |         |
| birthday | date         | NULL            | YES  |     | NULL    |       | select,insert,update,references |         |
+----------+--------------+-----------------+------+-----+---------+-------+---------------------------------+---------+

创建临时表

CREATE TEMPORARY TABLE temp_person (
number INT(11),
name VARCHAR(255),
birthday DATE
);

在创建表格时,您可以使用TEMPORARY关键词。只有在当前连接情况下,TEMPORARY表才是可见的。当连接关闭时,TEMPORARY表被自动取消。这意味着两个不同的连接可以使用相同的临时表名称,同时两个临时表不会互相冲突,也不与原有的同名的非临时表冲突。(原有的表被隐藏,直到临时表被取消时为止。)您必须拥有CREATE TEMPORARY TABLES权限,才能创建临时表。

如果表已存在,则使用关键词IF NOT EXISTS可以防止发生错误。

CREATE TABLE IF NOT EXISTS person2 (
number INT(11),
name VARCHAR(255),
birthday DATE
);

注意,原有表的结构与CREATE TABLE语句中表示的表的结构是否相同,这一点没有验证。注释:如果您在CREATE TABLE...SELECT语句中使用IF NOT EXISTS,则不论表是否已存在,由SELECT部分选择的记录都会被插入。

在CREATE TABLE语句的末尾添加一个SELECT语句,在一个表的基础上创建表

CREATE TABLE new_tbl SELECT * FROM orig_tbl;

注意,用SELECT语句创建的列附在表的右侧,而不是覆盖在表上

mysql> SELECT * FROM foo;
+---+
| n |
+---+
| 1 |
+---+
mysql> CREATE TABLE bar (m INT) SELECT n FROM foo;
mysql> SELECT * FROM bar;
+------+---+
| m    | n |
+------+---+
| NULL | 1 |
+------+---+

也可以明确地为一个已生成的列指定类型

CREATE TABLE foo (a TINYINT NOT NULL) SELECT b+1 AS a FROM bar;

根据其它表的定义(包括在原表中定义的所有的列属性和索引),使用LIKE创建一个空表:

CREATE TABLE new_tbl LIKE orig_tbl;

创建一个有主键,唯一索引,普通索引的表:

CREATE TABLE `people` (`peopleid` smallint(6) NOT NULL AUTO_INCREMENT,`firstname` char(50) NOT NULL,`lastname` char(50) NOT NULL,`age` smallint(6) NOT NULL,`townid` smallint(6) NOT NULL,PRIMARY KEY (`peopleid`),UNIQUE KEY `unique_fname_lname`(`firstname`,`lastname`),KEY `fname_lname_age` (`firstname`,`lastname`,`age`)
) ;

其中peopleid是主键,以firstname和lastname两列建立了一个唯一索引,以firstname,lastname,age三列建立了一个普通索引

删除表

DROP TABLE  tbl_name;

或者是

DROP TABLE IF EXISTS tbl_name;

关于索引更多可以参考:http://www.cnblogs.com/ggjucheng/archive/2012/11/04/2754128.html

转载于:https://www.cnblogs.com/jungege/p/5549751.html

mysql基本操作 [http://www.cnblogs.com/ggjucheng/archive/2012/11/03/2752082.html]相关推荐

  1. github上的优秀项目和开发环境配置【转http://www.cnblogs.com/2018/archive/2012/11/09/2763119.html】...

    github上的优秀项目和开发环境配置 国外的几个公司开放的资源  https://github.com/google https://github.com/facebook  https://git ...

  2. 基于dsp_builder的算法在FPGA上的实现(转自https://www.cnblogs.com/sunev/archive/2012/11/17/2774836.html)...

    一.摘要 结合dsp_builder.matlab.modelsim和quartus ii等软件完成算法的FPGA实现. 二.实验平台 硬件平台:DIY_DE2 软件平台:quartus ii9.0 ...

  3. 爬虫基础学习 转【http://www.cnblogs.com/huangxincheng/archive/2012/11/08/2759752.html】

    这一篇我们聊聊在页面抓取时应该注意到的几个问题. 一:网页更新 我们知道,一般网页中的信息是不断翻新的,这也要求我们定期的去抓这些新信息,但是这个"定期"该怎么理解,也就是多长时间 ...

  4. 25.2.3.35. mysql_init() http://www.cnblogs.com/ymy124/archive/2012/04/03/2430808.html

    先看看mysql_init函数的官方定义: 25.2.3.35. mysql_init() MYSQL *mysql_init(MYSQL *mysql) 描述 分配或初始化与mysql_real_c ...

  5. Android NDK 开发环境搭建(二)----来源http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.htm

    随笔- 116  文章- 0  评论- 106  android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创) android 最新 N ...

  6. 一个讨论引发关于js中函数声明,函数表达式,形参与变量声明赋值引发的一些事(http://www.cnblogs.com/zhouyongtao/archive/2012/11/22/2783089)

    //Firefox 17下运行结果 function a(){} undefined [function a(){}, 2, 3] ee 444 6 ========================= ...

  7. 第四次游戏革命:全息游戏 from:http://www.cnblogs.com/alamiye010/archive/2012/08/15/2640881.html...

    第四次游戏革命:全息游戏 最近一个月,把国内外十数款单机/网游大作横扫一遍,感慨颇多.国内游戏,抄袭遍地,十足的坑爹,浪费青春.反观国外,韩国网游经典而耐玩,<C9>+<洛奇英雄传& ...

  8. CBitMap的用法 from http://www.cnblogs.com/toconnection/archive/2012/08/04/mfc.html

    CBitMap的用法 MFC提供了位图处理的基础类CBitmap,可以完成位图(bmp图像)的创建.图像数据的获取等功能.虽然功能比较少,但是在对位图进行一些简单的处理时,CBitmap类还是可以胜任 ...

  9. CImage类 from http://www.cnblogs.com/afarmer/archive/2012/03/31/2427273.html

    CImage类 Visual C++的CBitmap类的功能是比较弱的,它只能显示出在资源中的图标.位图.光标以及图元文件的内容,而不像VB中的Image控件可以显示出绝大多数的外部图像文件(BMP. ...

最新文章

  1. python输入input的用法
  2. 基于Apache Flink的爱奇艺实时计算平台建设实践
  3. viewDidUnload 和 dealloc 的区别
  4. springboot获取原生js请求_七节课带你学会SpringBoot,第三课
  5. mac插网线不能上网_实现两个无线路由器之间的连接,最稳定的方式是使用网线连接...
  6. [CF]Round514
  7. 一文看懂集群、分布式与负载均衡的关系
  8. FLV视频在IIS6.0下不能播放 处理的方法
  9. Java学习----运算符与表达式
  10. html 增加和删除一行,关于JS点击增加一行,点击删除一行的问题?
  11. 从底层看云:云计算准备好了么?
  12. 注册cn域名应该注意些什么
  13. 动态修改服务器配置文件,asp.net(c#)动态修改webservice的地址和端口(动态修改配置文件)...
  14. SpringBoot数据访问-------------数据缓存
  15. 电子电工产品IP防水测试及测试设备
  16. markdown支持的latex
  17. 如何查找一篇论文的源代码
  18. destoon 7.0重新安装
  19. STM32并口驱动AD9854——HAL库
  20. Halcon 回形针方向计算

热门文章

  1. 在项目中添加引用的意思
  2. tornado(七)
  3. Codeforces 446C —— DZY Loves Fibonacci Numbers(线段树)
  4. Android Studio第十九期 - Glin架构
  5. 机器学习理论之SVM
  6. 推荐C、C++、Java、网络安全、Unix、Linux 一些编程书
  7. [翻译]StructureMap 指南 – .NET中的依赖注入和控制反转
  8. 程序员难逃二八法则,如何晋升为头部20%玩家?
  9. 数据驱动的云托管服务最佳范式
  10. 蚌埠智慧城市建设跻身全国22强 让数据替群众“跑腿”