MySQL中的数据类型
大致分为五种:数值,日期和时间,字符串,json,空间类型
每种类型也包括也一些不同的子类型,根据需要来选择。
如数值类型包括整数类型和浮点数类型 整数类型根据占用的存储空间的不同 又包括TINYINT(1字节),SMALLINT(2字节),INT(4字节),BIGINT(8字节),DECIMAL定点型。可以存储不同范围的整数。
浮点数类型包括FLOAT(4字节)和DOUBLE(8字节),可以存储不同范围的浮点数。日期和时间类型包括DATE日期, TIME时间, DATETIME日期时间, TIMESTAMP时间戳。
字符串类型包括CHAR定长字符串, VARCHAR变长字符串, TEXT文本, BLOB二进制数据, ENUM枚举, SET集合。如VARCHAR(100)表示长度为100的变长字符串。
空间类型包括地理信息、几何图形等。
MySQL大小写
- 在SQL中,关键字和函数名是不用区分字母大小写的,比如
SELECT、WHERE、 ORDER、 GROUP BY
等关键字,以及ABS、MOD、 ROUND、 MAX
等函数名。 - MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
1、数据库名、表名、表的别名、变量名是严格区分大小写的;
2、关键字、函数名称在SQL中不区分大小写;
3、列名(或字段名)与列的别名(或字段别名)在所有的情况下均是忽略大小写的; - MySQL在Windows的环境下全部不区分大小写
- 可通过如下命令查看是否大小写敏感
SHOW VARIABLES LIKE '%lower_case_table_names%';
1.与库相关
进入mysql数据库
mysql -u root -p;
修改密码
update user set password=password(”123456″) where user=’root’;
刷新数据库
FLUSH PRIVILEGES;
创建数据库
CREATE DATABASE name;
如果数据库已经存在,执行 CREATE DATABASE 将导致错误。
为了避免这种情况,可以在 CREATE DATABASE 语句中添加 IF NOT EXISTS 子句
如果希望在创建数据库时指定一些选项,可以使用 CREATE DATABASE 语句的其他参数,例如,可以指定字符集和排序规则:
CREATE DATABASE [IF NOT EXISTS] database_name
[CHARACTER SET charset_name]
[COLLATE collation_name];
以上代码创建一个使用 utf8mb4 字符集和 utf8mb4_general_ci 排序规则的数据库。
打开数据库
USE name;
显示所有数据库
SHOW DATABASES;
删除数据库
//删除数据库,如果存在的话,不提醒
DROP DATABASE IF EXISTS name;
//删除数据库前,有提示。
mysqladmin drop NAME;
显示当前mysql版本和当前日期
select version(),current_date;
2.与表相关
创建表
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
...
);
table_name
是你要创建的表的名称。column1
,column2
, ... 是表中的列名。datatype
是每个列的数据类型。
实例1:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL,
birthdate DATE,
is_active BOOLEAN DEFAULT TRUE
);
创建了一个users表,其中包含五列:
id
: 用户 id,整数类型,AUTO_INCREMENT自增长,PRIMARY KEY作为主键。user