Mysql 登陆&退出、创建&删除&选择数据库、基本数据类型、创建&删除表格

登陆数据库使用登陆命令:

shell>mysql [-h host] -u user -p [-D database]
Enter password: 

-h指定的是远程主机,登陆本地数据库可以不用,-D 用于指定登陆之后选择的数据库,如果没有指定数据库,则不进行数据库选择。进入数据库之后,每一条命令之前会有 mysql> 的提示符。mysql中的命令都严格以分号(;)作为命令结束。如果在一条命令没输入完之前换行,会出现 -> 的提示符。

退出数据库的命令:

mysql>exit

或:

mysql>quit

这两条后面可以不加分号



在mysql中创建数据库的命令:

mysql>create database database_name;

在mysql中删除数据库的命令:

mysql>drop database database_name;

要明确使用(选择)某个数据库的命令:

mysql>use database_name;

每次使用某个数据库前必须明确选择使用它,也既是使用use命令。



在创建数据库表格之前需要先了解mysql的数据类型。mysql主要有三类数据类型:数值类型、时间&日期类型、字符串类型。这个部分节选翻译自第一条链接。

数值类型:

  • int,正常整型数值,分为signed和unsigned,范围分别是 -2147483648 到 2147483647 和 0 到

    4294967295

  • tinyint,超小整型数值,分为signed和unsigned,范围分别是 -128 到 128 和 0 到 255
  • smallint,小型整型数值,分为signed和unsigned,范围分别是 -32768 到 32768 和 0 到 65535
  • mediumint,中等整型数值,分为signed和unsigned,范围分别是 -8388608 到 8388608 和 0 到

    16777215

  • bignit,大号整型数值,分为signed和unsigned,范围分别是 -9223372036854775808 到

    9223372036854775808和 0 到 18446744073709551615

  • float(m, d),浮点型数值,不能为unsigned。可以设定显示总长度m位数字和d位小数。默认情况下分别是10和2。
  • double(m,d),双精度浮点型数值,不能为unsigned。可以设定显示总长度m位数字和d位小数。默认情况下分别是16和4。
  • decimal(m,d),一种未包装的小数,不能为unsigned。每一位小数都对应一个字节,需要明确定义总长度m位数字和d位小数。numeric和decimal是同义词。

时间&日期类型:

  • date,yyyy-mm-dd格式,范围从1000-01-01到9999-12-31
  • datetime,yyyy-mm-dd hh:mm:ss格式,范围从1000-01-01 00:00:00到9999-12-31

    23:59:59

  • timestamp,范围从1970年1月1日0点0分0秒到2037年的某个时间,格式类似datetime,但是没有连字符。例如1973年12月30日15点30分0秒对应19731230153000(yyyymmddhhmmss)
  • time,hh:mm:ss格式存储。
  • year(m),2位或4位格式。指定2位时,例如year(2),能够存储1970年到2069年(70-69)。指定4位时,能够存储1901年到2155年,默认4位长度。

字符串类型:

  • char(m),固定长度字符串,长度从1到255,左对齐右填充,默认长度为1
  • varchar(m),变长字符串,长度从1到255,定义式必须指定一个长度。实际上从官网解释上看(第二条链接),从版本5.03及其以后,最大长度能到65535。长度小于等于255时,额外用一个字节存储长度值,长度超过255时,额外用2个字节存储长度值。
char(4) 存储需求 varchar(4) 存储要求
’ ‘ 4字节 1字节
‘ab’ ‘ab ‘ 4字节 ‘ab’ 3字节
‘abcd’ ‘abcd’ 4字节 ‘abcd’ 5字节
‘abcdefg’ ‘abcd’ 4字节 ‘abcd’ 5字节
  • blob和text,最大存储65535个字节。blob将数据当作二进制数组存储,可以保存图片、声音等数据;text依然将数据当作字符存储。无需为blob和text指定长度。具体参考第三条链接。
  • tinyblob和tinytext,最大存储255个字节,其余特性和blob/text一致

    mediumblob和mediumtext,最大存储16777215个字节,其余特性和blob/text一致

  • longblob和longtext,最大存储4294967295个字节,其余特性和blob/text一致
  • enum,枚举类型,枚举最多可以有65535个元素,枚举型字段中除列举字符串之外,可以为NULL,若插入非法字符串,将用空(”)字符串代替。关于枚举类型,更多参见第四条链接


在数据库中创建表格的命令:

mysql>create table table_name (cloumn_name colume_type, colunm_name colunm_type ...);

列项除了有数据类型,还可以添加一些别的属性,例如 not null, auto_increment, default等。还可以指定主键,设置数据库引擎,设置字符集等。例如:

mysql>create table hotel (
        -> `id` int unsinged not null auto_increment,
        -> `default test` int default 0,
        -> `num` char(4) not null,
        -> `price` varchar(5) not null,
        -> `position` varchar(30) not null,
        -> `describe` text,
        -> `available` enum(‘y‘, ‘n‘),
        -> primary key(`id`)
);

有几点需要注意:

  • ` 叫反引号,号是Esc下面的那个按键。在mysql语句中,如果创建表格时候表格的名字或属性字段跟系统关键字重名,或者名字中间包括空白字符,可以利用反引号把名字括起来,mysql只保留反引号内的内容。同时要注意,用其他引号括起来都不对,因为mysql会认为引号是字段的起始字符,这不符合命名规则。
  • text类型不能有默认值。需要默认值的可以在字段后面用 default 注明。
  • 利用 primary key(column_name, column) 来设置主键,多个列项之间用逗号隔开。

在数据库中删除表格的命令:

mysql>drop table table_name;

如果为了保证即使没有表存在,也不至于语句出错,可以使用下面的命令:

mysql>drop table if exists table_name;

参考链接:

http://www.tutorialspoint.com/mysql/mysql-data-types.htm

https://dev.mysql.com/doc/refman/5.0/en/char.html

https://dev.mysql.com/doc/refman/5.0/en/blob.html

https://dev.mysql.com/doc/refman/5.0/en/enum.html

时间: 2024-12-16 06:58:36

Mysql 登陆&退出、创建&删除&选择数据库、基本数据类型、创建&删除表格的相关文章

如何彻底删除Oracle数据库,以创建相同实例名称的库

今天建库时选择了OMF方式,结果文件名称采用Oracle自动命名的方式,看不懂啊,于是乎决定删除再重建. Oracle提供了删除数据库的指令:drop database. 需要数据库处于mount状态,然后alter system enable restricted session;,网上有帖子说还需要exclusive,由于我是VM装的,用户只有我一个,所以不用可以.由于当前处于open状态,需要改为mount,执行: SQL> alter database close; alter data

MySQL登陆退出

单实例登陆MySQL: mysql/mysql -uroot 适合刚安装后无密码 mysql -uroot -p 标准登陆的方法 mysql -uroot -p'password' 密码明文会泄露密码,一般用于脚本中,脚本权限root 700 多实例登陆MySQL: mysql -S /data/3307/mysql.sock 适合无密码 mysql –uroot –p111 –S /data/3306/mysql.sock mysql –uroot –p –h 127.0.0.1 –P3306

19 MySQL概念 数据库 数据表 数据类型 增加删除修改查询 WHERE Order By Limit

数据库管理系统DBMS 数据库中相关概念 数据库 数据表 记录 字段 数据 登录和退出MySQL客户端 查询自己的MySQL服务器有几个数据库 二.退出MySQL客户端的命令 修改root用户的密码 在MySQL客户端来修改密码(当前账号的密码) 数据库操作 创建数据库 显示所有数据库 删除数据库 选择数据库 更改数据库默认字符集 数据表操作 显示当前数据库中的所有表 创建数据表 显示表的创建 列的常用属性 修改数据表 删除数据表 显示表结构 MySQL数据类型 整型 浮点型 字符型 文本型 日

远程linux服务器mysql数据库定期备份和删除

网上已经有部分关于Linux下定期备份mysql的方法,但是很多步骤不够详细,不适合新手,自己琢磨了很久,终于搞定了. 1.Linux服务器一般是ssh协议,如果本地也是Linux环境,可以直接通过shell连接,命令: ssh -l root -p 8080 202.***.***.*** 其中root为用户名,一般为root,8080为端口,202.***.***.***为服务器ip地址: 接下来会提示你输入密码,输入正确后即可进入服务器: 2.然后需要创建一个数据库备份数据存放的文件夹:

【转】 MySQL与PostgreSQL:该选择哪个开源数据库?哪一个更好?

转载地址:http://www.infoq.com/cn/news/2013/12/mysql-vs-postgresql 如果打算为项目选择一款免费.开源的数据库,那么你可能会在MySQL与PostgreSQL之间犹豫不定.MySQL与PostgreSQL都是 免费.开源.强大.且功能丰富的数据库.你主要的问题可能是:哪一个才是最好的开源数据库,MySQL还是PostgreSQL呢?该选择哪一个开源数据 库呢? 在选择数据库时,你所做的是个长期的决策,因为后面如果再改变决定将是非常困难且代价高

Linux下mysql数据库定期备份与删除

1.通过shell连接到服务器 ssh -l root -p 端口 ip 输入密码后,进入服务器 2.创建一个数据库备份数据存放的文件夹 mkdir /mysql/mysqldata_backup 3.创建并编辑文件 vi /usr/sbin/bakmysql 文件内容如下: fn = ` date +%Y%m%d`tar zcvf /mysql/mysqldata_backup/mysql$fn.tar.gz /mysql/data 或者 mysqldump -uroot -ppassword

Windows下Java程序实现对Mysql数据库的插入,删除,修改和查询

运行环境:Windows7,Eclipse,MySql,JDK1.7,mysql-connector-java-5.1.17-bin.jar 1 //import java.io.*; 2 import java.util.*; 3 import java.sql.*; 4 5 /** 6 * 7 * @date 2014-05-20 8 * @author asif 9 * @作用 java实现对mysql数据库的增减删查 10 * @bug 插入,删除,更新的时候异常停止 11 * 12 *

Hibernate连接mysql数据库并自动创建表

天才第一步,雀氏纸尿裤,Hibernate第一步,连接数据库. Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. 所以说,Hibernate讲白了就是简化了与数据库之间的操作,那么要玩转它自然就得连接上数据库咯.(与Hibernate对应的orm框架还有Mybatis,只不过M

MySQL创建及操作数据库建议命令汇总

SQL全称:结构化查询语言(Structured Query Language) 包含4种语言 1.数据定义语言 DDL Data Definition Language 2.数据操作语言 DML Data Manipulation Language 3.数据查询语言 DQL Data Query Language 4.数据控制语言 DCL Data Control Language DDL中的常用命令: 1.创建数据库 create database db_name character set