mysql数据库为关系型数据库,个关系型数据库由一个或数个表格组成,表格中确定有键(键(key): 表中用来识别某个特定的人物的方法, 键的值在当前列中具备惟一性。)mysql
注意,可能会报错:sql
C:\AppServ\MySQL> mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES
解决方法以下:数据库
编辑mysql配置文件my.ini(在mysql的安装目录下,个人在D:Program FilesMySQLMySQL Server 5.0my.ini),在[mysqld]这个条目下加入 skip-grant-tables 保存退出后重启mysqlsegmentfault
这时候在cmd里面输入mysql -u root -p就能够不用密码登陆了,出现 password:的时候直接回车能够进入,不会出现ERROR 1045 (28000),但不少操做都会受限制,由于咱们不能grant(没有权限)。工具
继续按下面的流程走:ui
mysql> use mysql; Database changed
mysql> update mysql.user set authentication_string=password("新密码") where user="root"; Query OK, 1 rows affected (0.01 sec) Rows matched: 1 Changed: 1 Warnings: 0
mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
mysql> quit; Bye
改好以后,再修改一下my.ini这个文件,把咱们刚才加入的 "skip-grant-tables"这行删除,保存退出再重启mysql就能够了。编码
-- 建立一个名为 samp_db 的数据库,数据库字符编码指定为 gbk create database samp_db character set gbk; drop database samp_db; -- 删除 库名为samp_db的库 show databases; -- 显示数据库列表。 use samp_db; -- 选择建立的数据库samp_db show tables; -- 显示samp_db下面全部的表名字 describe 表名; -- 显示数据表的结构 delete from 表名; -- 清空表中记录
CREATE TABLE `user_accounts` ( `id` int(100) unsigned NOT NULL AUTO_INCREMENT primary key, `password` varchar(32) NOT NULL DEFAULT '' COMMENT '用户密码', `reset_password` tinyint(32) NOT NULL DEFAULT 0 COMMENT '用户类型:0-不须要重置密码;1-须要重置密码', `mobile` varchar(20) NOT NULL DEFAULT '' COMMENT '手机', `create_at` timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6), `update_at` timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6), -- 建立惟一索引,不容许重复 UNIQUE INDEX idx_user_mobile(`mobile`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表信息';
数据类型的属性解释:code
NULL:数据列可包含NULL值; NOT NULL:数据列不容许包含NULL值; DEFAULT:默认值; PRIMARY:KEY 主键; AUTO_INCREMENT:自动递增,适用于整数类型; UNSIGNED:是指数值类型只能为正数; CHARACTER SET name:指定一个字符集; COMMENT:对表或者字段说明;
SELECT 语句用于从表中选取数据。 语法:SELECT 列名称 FROM 表名称 语法:SELECT * FROM 表名称
Update 语句用于修改表中的数据。 语法:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
INSERT INTO 语句用于向表格中插入新的行。 语法:INSERT INTO 表名称 VALUES (值1, 值2,....) 语法:INSERT INTO 表名称 (列1, 列2,...) VALUES (值1, 值2,....)
DELETE 语句用于删除表中的行。 语法:DELETE FROM 表名称 WHERE 列名称 = 值