您的位置:首页 > 数据库 > MySQL

Mysql基础知识

2018-03-14 10:04 309 查看
-- 显示当前ip下所有数据库
SHOW DATABASES;
-- 选择使用这个数据库
USE database;
-- 显示当前数据库中的所有表
SHOW TABLES;
-- 创建一个数据库
CREATE DATABASE runoob;
-- 如果存在表,删除重建
DROP TABLE IF EXISTS `websites`;
-- 创建表
CREATE TABLE `websites` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(20) NOT NULL DEFAULT '0' COMMENT '站点名称',
`url` varchar(255) NOT NULL DEFAULT 'www.xxoo.com',
`alexa` int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名',
`country` char(10) NOT NULL DEFAULT 'CN' COMMENT '国家',
PRIMARY KEY (`id`) -- 主键
);

-- ----------------
-- ######约束######
-- NOT NULL - 指示某列不能存储 NULL 值。
-- UNIQUE - 保证某列的每行必须有唯一的值。
-- PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列(或两个列多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。
-- FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。
-- CHECK - 保证列中的值符合指定的条件。撤销约束 ALTER TABLE 表 DROP CHECK 表约束
-- DEFAULT - 规定没有给列赋值时的默认值。 撤销约束ALTER TABLE 表 ALTER 表 DROP DEFAULT
-- AUTO INCREMENT 自动地创建主键字段的值,默认起始值1,每条新记录递增 1,在INSET语句中可以不填参数,自动递增
-- -------------------------
-- ######ALTER TABLE 语句##
-- 用于在已有的表中添加、删除或修改列。
-- -------------------------
-- 现有表中添加列
ALTER TABLE websites ADD age INT;
-- 更改表中列的数据类型
ALTER TABLE websites MODIFY COLUMN age char(10);
-- 更改表中列的字段名
ALTER TABLE websites CHANGE age age_new varchar(255);
-- 删除现有表中age列
ALTER TABLE websites DROP COLUMN age;
-- 添加主键 
ALTER TABLE websites ADD PRIMARY KEY(列名);
-- 删除主键
ALTER TABLE  websites DROP PRIMARY KEY; -- 方法1
ALTER TABLE websites  MODIFY  id INT, DROP PRIMARY KEY; -- 方法2
-- 添加外键
ALTER TABLE 从表 ADD CONSTRAINT 外键名称(形如:FK_从表_主表) FOREIGN KEY 从表(外键字段) REFERENCES 主表(主键字段);
-- 删除外键
ALTER TABLE 表名 DROP FOREIGN KEY 外键名称
--  显示数据表属性
SHOW COLUMNS FROM websites;
-- 重置 AUTO_INCREMENT 序列:如果在删除的同时又有新记录添加,有可能会出现数据混乱。
ALTER TABLE websites DROP id;
ALTER TABLE websites ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT FIRST,ADD PRIMARY KEY (id);

-- 设置序列的开始值,从100开始自增长,每次+1
ALTER TABLE websites AUTO_INCREMENT = 100;

-- 添加测试数据
INSERT INTO `websites` VALUES
('1', 'Google', 'https://www.google.cm/', '1', 'USA'),
('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'),
('3', '教程', 'http://www.rxxo.com/', '4689', 'CN'),
('4', '微博', 'http://weibo.com/', '20', 'CN'),
('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');
COMMIT;
-- ---------------- -- ######添加数据## -- ----------------
INSERT INTO `websites` VALUES ('6', '百度', 'https://www.baidu.cm/', '1010', 'CN');
INSERT INTO `websites`(id,name,url,alexa,country)VALUES('7', '小米', 'https://www.mi.cm/', '1010', 'CN');
-- ----------------------------------
-- ######修改数据  必须加where条件##
-- ----------------------------------
UPDATE websites SET name='非死不可' WHERE id=5
-- -------------------------
-- ######删除某一条件数据##
-- -------------------------
DELETE FROM websites WHERE id=7
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: