SQL语句实例说明 方便学习mysql的朋友
来源:asp之家 发布时间:2012-11-30 20:02:43
MySQL中模式就是数据库
SHOW DATABASES;
show databases;
罗列所有数据库名称
CREATE DATABASE <数据库名>
create database TEST;
创建名为TEST的数据库
DROP DATABASE <数据库名>
drop database TEST;
删除名为TEST的数据库
USE <数据库名>
use TEST;
使用名为TEST的数据库
SHOW TABLES
show tables;
显示当前数据库所有表格
SHOW [FULL] COLUMNS FROM <表名>
show [full] columns from <表名>
在MySQL数据库中显示表的结构,如果加上full则更加详细
DESC <表名>
desc TEST;
查看表TEST的结构,同show columns from TEST
SHOW CREATE TABLE <表名>
show create table TEST;
查看表TEST的所有信息,包括建表语句
创建基本表:
CREATE TABLE <表名>
(<列名> <数据类型>[列级完整性约束条件],
<列名> <数据类型>[列级完整性约束条件],
………………
);
create table STUDENT
(
studentId int(30) primary key,
name varchar(255),
address varchar(255)
);
创建名为STUDENT的表格,有属性studentId,name,address,其中studentId为主键
create table TEACHER
(
teacherId int(30),
name varchar(255),
age int(20),
studentId int(30),
primary key (teacherId),
foreign key (studentId) references STUDENT(studentId)
);
创建名为TEACHER的表格,其中teacherId为主键,studentId为外键,引用STUDENT表的主键studentId
修改基本表:
ALTER TABLE <表名> RENAME <修改后表名>
alter table TEACHER rename S;
将TEACHER表的表名改为S
ALTER TABLE <表名> ADD COLUMN <列名> <属性类型>
alter table TEACHER add column ADDRESS varchar(255);
在表名为TEACHER的表中加入名为ADDRESS的列
ALTER TABLE <表名> CHANGE COLUMN <列名> <修改后列名> <属性类型>
alter table TEACHER change column ADDRESS address varchar(230);
修改TEACHER表中的列,将ADDRESS的列名改为address
ALTER TABLE <表名> DROP [COLUMN] <列名>
alter table TEACHER drop [column] address;
删除列名为address的列,column可有可无
删除基本表:
DROP TABLE <表名> [RESTRICT|CASCADE]
删除表格
drop table STUDENT restrict;
删除STUDENT表。受限制的删除,欲删除的基本表不能被其他表的约束所引用(如check,foreign key等约束),
不能有视图,不能有触发器,不能有存储过程或函数等。
drop table STUDENT cascade;
若选择cascade,则该表删除没有限制。在删除基本表的同时,相关的依赖对象,例如视图,都将被一起删除。
但是我在MySQL测试的时候给错误提示Cannot delete or update a parent row: a foreign key constraint fails,不予以删除,不知道是什么原因。
关于完整约束性:
参考文章:完整性约束的SQL定义
ALTER TABLE <表名> ADD CONSTRAINT <约束名> <约束条件>
alter table teacher add constraint pk_teacher_id primary key teacher(id);
在teacher表中增加名为pk_teacher_id的主键约束。
ALTER TABLE <表名> DROP <约束条件>
alter table teacher drop primary key;
删除teacher表的主键约束。
alter table student add constraint fk_student_teacher foreign key student(teacherId) references teacher(id);
在student表中增加名为fk_student_teacher的约束条件,约束条件为外键约束。
猜你喜欢
- 年初的时候收藏过一篇关于mysqlreport的报表解读,和内置的show status,和show variables相比mysqlrep
- 1,WITH TEMPLET意思是,生成的页面架构将采用某个已设定的模板,在此之前我的一篇教程中介绍过,希望各位在看本教程之前对ASP采用模
- 我正在开发一个档案管理系统,需要从数据库中同时调出图像及相关的文字说明,可我只做到了单纯地显示图片,像有一个数据库CHUNFENG,在数据库
- 我已安装了WINDOWS NT OPTON PACK 中的SMTP Service,请问如何使用它的发送邮件功能?在安装了SMTP Serv
- 每次在操作数据库的时候最烦的就是根据表单提交的内容写sql语句,特别是字段比较多的时候很麻烦,动不动就容易写错。所以我就写了下面的生成sql
- 在后台添加中一般我们都设置了一个“关键字”,而且一般输入可能如下: 娃娃,毛绒娃娃,日本充气娃娃 我们将根据这个来做,具体实现如下: 先看一
- 元素的CSS样式,除了包括内联的(即通过style属性加上的)样式定义外,还有页面嵌入的css和外部引入的css两种方式。但在JS中通过el
- 代码如下:set fso=server.createobject("scripting.filesystemobject"
- 几个常用的js小函数,在表单验证时也许您用得到:一检查是否是email地址,二检查是否为数字,三检查是否为电话号码,四检查num是否是负数或
- 一:文字加粗 倾斜的代码文字加粗的代码是: <b>你好</b>文字倾斜的代码是: <i>你好!</
- /* 小弟刚刚接触ORACLE存储过程,有一个问题向各位同行求教,小弟写了一个存储过程,其目的是接收一个参数作为表名,然后查询该表中的全部记
- oracle数据库的权限系统分为系统权限与对象权限。系统权限( database system privilege )可以让用户执行特定的命
- 第一种,也是我最常用的,第一帧里加上这个比较灵活,想要自定义加入菜单,只要定义drMenu这个对象就可以了var drMenu&n
- 无论是在小得可怜的免费数据库空间或是大型电子商务网站,合理的设计表结构、充分利用空间是十分必要的。这就要求我们对数据库系统的常用数据类型有充
- (一)深入浅出理解索引结构实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered
- 当你使用Lumigent log Explorer连接服务器后,选择具体的数据库实例时报错,提示 &nbs
- 如何自动更新导航栏?下面看看如何具体使用Content Linking组件: <&nbs
- 代码如下:<% set studentinstance = CreateStudent()&n
- 代码如下:Set Catalog_object= Server.CreateObject("ADO
- 仿照常见的那个图片变换flash做的效果,纯js。不过滤镜变换只对应ie,ff只能看到一般的切换。这个js做的效果最早在sina看到,这里把