评论 (12)
一、数据库简单介绍1、 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: ? 网状型数据库 ? 层次型数据库 ? 关系型数据库 ? 面向对象数据库 上面4中数据库系统中,关系型数据库使用最为广泛。面向对象数据库则是由面向对象语言催生的新型数据库,目前的一些数据库系统,如:SQL Server 2005、Oracle10g等都开始增加面向对象的特性。 ? 二、常用基本SQL语句/语法? SQL语句基础理论 SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作然后关系型数据库。 标准的SQL语句通常划分为以下类型: 查询语句:主要由于select关键字完成,查询语句是SQL语句中最复杂,功能最丰富的语句。 DML(Data Munipulation Language,数据操作语言)语句,这组DML语句修改后数据将保持较好的一致性;操作表的语句,如插入、修改、删除等; DDL(Data Definition Language,数据定义语言)语句,操作数据对象的语言,有create、alter、drop。 DCL(Data Control Language,数据控制语言)语句,主要有grant、revoke语句。 事务控制语句:主要有commit、rollback和savepoint三个关键字完成 DDL语句 DDL语句是操作数据库对象的语句,包括创建create、删除drop、修改alter数据库对象。 常见数据库对象 对象名称 |
常用数据类型
列类型mediumblob/longblob
mediumtext/longtext
? 常用查询dbName;
[ ] dbName;
dbName;)tableName;(
整型,,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> --普通长度文本,default设置默认值(255) ‘zhangsan’,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> --超长文本
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> --日期userInfo (
(20),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">sexname,sex ;
userInfo
* ;
tel (11) ‘02012345678’;
(,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">birthdaytel (15) ‘02087654321’;
tel (15) ;
tel (15) age;
modify不支持一次修改多个列,但是Oracle支持多列修改tel (15) ,
name (20) tel;
photo;
rename users;
users change name u_name (10);
users change sex u_sex (10) u_name;
13、 删除表
users;? 约束
MySQL中约束保存在information_schema数据库的table_constraints中,可以通过该表查询约束信息;
:非空约束,指定某列不为空
: 唯一约束,指定某列和几列组合的数据不能重复:主键约束,指定某列的数据不能重复、唯一
:外键,指定该列记录属于主表中的一条记录,参照另一条数据
:检查,指定一个表达式,用于检验指定数据null约束temp(
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> name (255) ‘abc’,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> sex
temp
sex (2) ;
temp sex (2) ;
temp sex (2) ‘abc’ ;
temp (
(25),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> password (16),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> --使用表级约束语法,
uk_name_pwd (name,password)
temp (name,password);
temp name (25) ;
temp name;
temp(
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> name (25)
temp2(
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> name (25),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> pwd (15),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> pk_temp_id (id)
pk_temp_id (name,pwd)
temp ;
temp (name,pwd);
temp id ;
auto_increment ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> name (20),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> pwd (16)
约束
classes(
(20)student(
auto_increment,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> name (22),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> pk_id (id),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> classes_id classes(id)
student(
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> (classes_id) classes(id)
fk_classes_id (classes_id) classes(id)
classes(
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> number ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> (name,number)
(20),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> classes_number ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">
(classes_name,classes_number) classes(name,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">删除外键约束:
student student_ibfk_1;
student fk_student_id;
student (classes_name,number);
tree(
(50),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> parent_id ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> (parent_id) tree(id)
,前者是级联删除,后者是将从表的关联列的值设置为null。
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px"> (id),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">
(age > 20)?? 索引
)中的一个数据库对象,索引的作用就是提高对表的检索查询速度,idx_temp_name temp(name);
idx_temp_name$pwd temp(name,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">删除索引:
idx_temp_name temp;
?
? 视图
replace view_temp
name,age temp;
option来完成限制。* temp
;
view_temp
id,name temp;
view_temp;
v_temp;
?
? DML语句
插入语句temp (,‘jack’,25);
temp(name,age) (‘jack’,22);
temp id = 7,name = ;
temp(name) name classes;
,‘jackson’ 23);修改语句temp name = ‘jack2’;
temp name = ‘jack’,age = 22;
temp name = ‘jack’ age > 22;
删除语句temp;
temp age > 20;
?
? select 查询、function 函数
* temp;
temp age = 22;
age + 2,age / 2,age – 2,age * 2 temp age – 2 > 22;
concat(name,‘-eco’) temp;
对列重命名name ‘名称’ temp;
name “名’称” temp;
t.name Name temp t;
5 + 2;concat(,);
去掉重复数据id temp;
id,age temp;
条件查询、大于等于>=、小于<、小于等于<=、等于=、不等于<>* t a > 2 a >= 3 a < 5 a <= 6 a = 7 a <> 0;
并且* temp age > 20 name = ‘jack’;
或者* tmep name = ‘jack’ name = ‘jackson’;
v v2
* form temp age 20 25;
查询* temp id (1,2,3);
模糊查询* temp name ‘j%’;
* temp name ‘%k%’;
* temp name ‘_%’ ‘’;
、
* temp name ;
* temp name ;
* temp (age > 20);
* temp id (1,2);
* temp id;
* temp id ;
* temp id,age;
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!