SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。 本文是学习mysql数据库的基础入门知识,包括常用的操作命令,学习mysql数据库这些知识点是必须要掌握的,收藏下来有备无患,首先开始接受启动MySQL服务,然后连接MySQL数据库有两种方式方式1:进入MySQL命令行, 在命令行中输入密码; 方式2:在运行窗口中;下文有详细讲解。如何启动MySQL服务?对于如何启动MySQL服务?除了可以在安装的时候勾选随着开机自启动,还可以在运行
窗口(windows)为例子,输入以下内容: net start 命令名字:开启一个服务,如:net start MySQL net stop 命令名字:关闭一个服务器,如:net stop MySQL 连接MySQL数据库有两种方式:方式1:进入MySQL命令行, 在命令行中输入密码; 方式2:在运行窗口中: 格式:mysql -u账户 -p密码 -h数据库服务器安装的主机的ip(如果是本机可以使用localhost) -P数据库端口 mysql -uroot -padmin -h127.0.0.1 -P3306 上面假设我的账号是root 密码是admin 若连接的数据库服务器在本机上,并且端口是3306。 则可以简写: mysql -uroot -padmin Navicat for MySQLNavicat for MySQL[1] 其实就是MySQL 的可视化工具,是一款强大的 MySQL 数据库管理和开发工具,它为专业开发者提供了一套强大的足够尖端的工具,但对于新用户仍然易于学习。Navicat for MySQL 基于Windows平台,为 MySQL 量身订作,提供类似于 MySQL 的用管理界面工具。此解决方案的出现,将解放 PHP、J2EE 等程序员以及数据库设计者、管理者的大脑,降低开发成本,为用户带来更高的开发效率。 数据库操作和存储引擎数据库对象:存储,管理和使用数据的不同结构形式,如:表、视图、存储过程、函数、触发器、事件、索引等。 数据库:存储数据库对象的容器。数据库分两种:
1):系统数据库(系统自带的数据库):不能修改
information_schema:存储数据库对象信息,如:用户表信息,列信息,权限,字符,分区等信息。
performance_schema:存储数据库服务器性能参数信息。
mysql:存储数据库用户权限信息。
test:任何用户都可以使用的测试数据库。 2):用户数据库(用户自定义的数据库):一般的,一个项目一个用户数据库。 常用的操作命令:查看数据库服务器存在哪些数据库: SHOW DATABASES; 使用指定的数据库: USE database_name; 查看指定的数据库中有哪些数据表: SHOW TABLES; 创建指定名称的数据库: CREATE DATABASE database_name; 删除数据库: DROP DATABASE database_name; 注意:;是必须的,不然不会正确显示 MySQL的存储引擎MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供不同的功能和能力。 通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。 MyISAM:拥有较高的插入,查询速度,但不支持事务,不支持外键。 InnoDB:支持事务,支持外键,支持行级锁定,性能较低。 InnoDB 存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但对比MyISAM,处理效率差,且会占用更多的磁盘空间以保留数据和索引。 MySQL常用列类型最常用的整数类型: MySQL列类型 Java数据类型 INT/INTEGER: int/Integer BIGINT: long/Long MySQL 以一个可选的显示宽度指示器的形式对 SQL 标准进行扩展,这样当从数据库检索一个值时,可以把这个值加长到指定的长度。 例如,指定一个字段的类型为 INT(6),就可以保证所包含数字少于 6 个的值从数据库中检索出来时能够自动地用空格填充。 需要注意的是,使用一个宽度指示器不会影响字段的大小和它可以存储的值的范围。一般不用指定位宽。 age int(2),并不是代表age最多存储99,而是指查询age值得时候使用两个0来占位. FLOAT[(s,p)] : DOUBLE[(s,p)] : 小数类型,可存放实型和整型 ,精度(p)和范围(s)
money double(5,2): 整数和小数一共占5位.其中小数占2位,最大值:999.99,最小-999.99.
都不够精确。 定点数据类型: DECIMAL,高精度类型,金额货币优先选择。 MySQL列类型 Java数据类型 FLOAT float/Float DOUBLE double/Double DECIMAL BigDecimal char(size) 定长字符,0 - 255字节,size指N个字符数,若插入字符数超过设定长度,会被截取并警告。 varchar(size) 变长字符,0 - 255字节,从MySQL5开始支持65535个字节,若插入字符数超过设定长度,会被截取并警告。 一般存储大量的字符串,比如文章的纯文本,可以选用TEXT系列类型。 注意:在MySQL中,字符使用单引号引起来。 相当于Java中字符串(String,StringBuilder/StringBuffer); 日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。 注意:在MySQL中,日期时间值使用单引号引起来。 相当于Java中Date,Calender。 BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB: 存放图形、声音和影像,二进制对象,0-4GB。 但是,在开发中,我们一般存储二进制文件保存路径的路径存储在数据库中。 BIT:我们一般存储0或1,存储是Java中的boolean/Boolean类型的值。 表的操作1.先进入某一个数据库.(使用USE database_name;命令) 2.输入建表的命令: CREATE TABLE 表名(
列名1 列的类型 [约束],
列名2 列的类型 [约束],
….
列名N 列的类型 约束 ); 注意:最后一行没有逗号 若在建表中使用到了数据库的关键字. 比如新建一张订单表:(order),但是order是数据库中的关键字(排序使用). 表名:t_order,若费用使用order这个单词.此时使用反引号()括起来, order`. 一般,起表名为:t_名字。 例子:创建一张表 创建一张学生信息表,记录学生的id,name,age.CREATE TABLE `t_student`( `id ` bigint, `name ` varchar(20), ` age ` int); 查看表结构: DESC table_name; 查看表的详细定义(显示表的定义SQL语句): SHOW CREATE TABLE table_name; 删除表: DROP TABLE table_name; 表的约束(针对于某一列):1.非空约束:NOT NULL,不允许某列的内容为空。 2.设置列的默认值:DEFAULT。 3.唯一约束:UNIQUE,在该表中,该列的内容必须唯一。 4.主键约束:PRIMARY KEY, 非空且唯一。 5.主键自增长:AUTO_INCREMENT,从1开始,步长为1。 6.外键约束:FOREIGN KEY,A表中的外键列. A表中的外键列的值必须参照于B表中的某一列(B表主键)。 主键设计,唯一标识某一行数据的: 1:单字段主键,单列作为主键,建议使用。
复合主键,使用多列充当主键,不建议。 2:主键分为两种:
1).自然主键:使用有业务含义的列作为主键(不推荐使用),比如身份证号码;
2).代理主键:使用没有业务含义的列作为主键(推荐使用); 相关文章: mysql 基础命令入门学习_MySQL mysql数据库学习笔记之常用操作命令_MySQL 相关视频: 数据库mysql视频教程 以上就是mysql数据库快速入门基础学习(经典教程)的详细内容,更多请关注php中文网其它相关文章!
学习教程快速掌握从入门到精通的SQL知识。
|