1 数据库相关概念
1.1数据库概述
数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及其查询操作。
1.2数据库管理系统(DataBase Management System,DBMS)
一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中表内的数据。
1.3常见的数据库管理系统
Mysql 免费的,跨平台的:开源免费的数据库,小型的数据库,已经被Oracle收购了。
Oracle 甲骨文,java写的:收费的大型数据库,Oracle公司的产品。Oracle收购SUN公司,收购Mysql。
DB2 IBM的,java写的:IBM公司的数据库产品,收费的。常应用在银行系统中。
SQL Server 微软的:MicroSoft 公司收费的中型数据库。C#、.net等语言常用
Access office 里面自带的:
SQLite android 里面的数据库:嵌入式的小型数据库,应用在手机端。
1.4基本概念
DDL(data definition language)数据库定义语言:主要是用在定义或改变表得结构,数据类型,表之间的链接和约束等初始化工作上,如create、alter、drop等。
DML(data manipulation language)数据操纵语言:主要用来对数据库的数据进行增删改查操作,如select、update、insert、delect等。
DCL(data control language)数据库控制语言:是用来设置或更改数据库用户或角色权限的语句,如grant、deny、revoke等。
2 基本使用
2.1DDL
创建数据库:
create database <数据库名>;
删除数据库:
drop database <数据库名>;
定义模式:
create schema<模式名>authorization<用户名>;
删除模式:
drop schema<模式名><cascade|restrict>;
定义基本表:
1、创建学生表“student”
create table student( sno char(9) PRIMARY KEY, /*列级完整性约束条件,sno是主码*/ sname CHAR(20) UNIQUE, /*sname取唯一值*/ ssex CHAR(2), sage SMALLINT, sdept CHAR(20) );
创建完成之后可以使用desc <表名>查看表整体架构
2、建立课程表”course”
create table course( cno CHAR(4) PRIMARY KEY, /*列级完整性约束条件,cno是主码*/ cname CHAR(40) NOT NULL, /*列级完整性约束条件,cname不能取空值*/ cpno CHAR(4), /*cpno的含义是先修课*/ credit SMALLINT, FOREIGN KEY(cpno)REFERENCES course(cno) /*表级完整性约束条件,cpno是外码,被参照表是course,被参照列是cno*/ );
3、建立学生选课表“sc”
create table sc( sno CHAR(9), cno CHAR(4), grade SMALLINT, PRIMARY KEY (sno,cno), /*主码由两个属性构成,必须作为表级完整性进行定义*/ FOREIGN KEY(sno) REFERENCES student(sno), /*表级完整性约束条件,sno是外码,被参照表是student*/ FOREIGN key(cno) REFERENCES course(cno) /*表级完整性约束条件,cno是外码,被参照表是course*/ );
修改基本表:
1、向”student”表增加”入学时间“l列,其数据类型为日期类型
alter table student add s_entrance TIMESTAMP;
2、删除1中新加的列”s_entrance”
alter table student drop COLUMN s_entrance;
3、修改”student”中的列名“s_entrance”为”s_time”
alter table student change s_entrance s_time TIMESTAMP;
4、修改“student”中列”sage”的属性改为int
alter table student MODIFY sage INT;
5、修改表“student”中字段”sage“为默认值26
alter table student alter sage set DEFAULT 26;
6、删除表”student”中字段“sage”的默认字段
alter table student alter sage drop DEFAULT;
7、删除表
drop table <表名> [RESTRICT|CASCADE];
restrict:该表的删除是有条件的。想要删除的基本表不能被其他表的约束所引用(如check,foreign key等约束),不能有视图,不能有触发器(trigger),不能有存储过程或函数等。
cascade:该表的删除没有限制条件,在删除基本表的同时,相关的依赖对象,例如视图,都将被一起删除。
Wow, amazing weblog structure! How lengthy have you ever been running a blog for?
you made running a blog look easy. The entire glance of your website is excellent,
as smartly as the content material! You can see similar here dobry sklep
Hey there! Do you know if they make any plugins to assist with SEO?
I’m trying to get my website to rank for some targeted keywords but I’m not seeing
very good success. If you know of any please share.
Many thanks! I saw similar blog here: List of Backlinks
Хотите отправиться в увлекательное путешествие? РостурЭксперт в этом вам поможет! Мы занимаемся организацией отдыха на воде и предлагаем больше 10 маршрутов на выбор. Стоимость аренды 2-х этажного плота приемлемая, вам она точно понравится. Вы забудете о суете города и погрузитесь в природу. Скучать вам точно не придется! Ищете сплав по дону на плоту цена волгоград? Rostur.expert – сайт, где можете посмотреть качественные фотографии сплавов по Дону на плоту. Если у вас появились вопросы, задайте нам их по телефону. Обращайтесь уже сейчас!